ICSがコンパイルできませんw(その1)

CMやAOKPが流行ってるので、ここは一発、CodeAuroraで行ってみようかと(謎)思って
ics_chocolateのソースをダウンロードしてコンパイルしてみたら、
これがなんとエラーの(変身忍者)嵐です。
AOSPの既知の問題のところ見たら、書いてありましたw
Build error with 4.0.x and earlier on Ubuntu 11.10. Symptom: Building IceCreamSandwich 4.0.x (and older versions) on Ubuntu 11.10 and newer fails with errors similar to this: :0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default] Cause: Ubuntu 11.10 uses a version of gcc where that symbol is defined by default, and Android also defines that symbol, which causes a conflict. Fix: Either downgrade to Ubuntu 10.04, or use the master branch, which can be compiled on Ubuntu 11.10 and newer.
なるほど。ubuntuをダウングレードするか、masterなbranchを取ってこいと…
んじゃ、週末に向けて環境新しいの作るか!とか思ってたら、
つよさんから耳寄り情報を入手しました。
まず、gccのバージョン違いによるシンボルのコンフリクトと書いてあるので、
ダウングレード すればよいと。
ここで言うのは、HOST(x86)のgccのことですw
私は、微妙にubuntu 11.10を使っておりまして、gccのバージョンが4.6.1となっとります。
これを、ダウングレードして4.5にします。
$ sudo apt-get install gcc-4.5 $ sudo apt-get install cpp-4.5
ま、gcc入れたらcppも入ると思いますが…(cppはC言語のプロプロセッサのことです。一応w)
これで/usr/bin/gcc-4.6と?/usr/bin/gcc-4.5が存在していると思われますが
gccとすると、どっちが動くんだ!
/usr/bin/gccはリンクになっていると思われ、見るの忘れたけど後勝ちで4.5になってる?
というわけで、この2種類を使い分けるために、update-alternativesコマンド使います。
$ update-alternatives --config gcc update-alternatives: エラー: gcc の alternatives がありません。
え?
$ update-alternatives --display gcc update-alternatives: エラー: gcc の alternatives がありません。
ないのかよ…orz
なので、登録しますw
$ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.5 45 update-alternatives: /usr/bin/gcc (gcc) を提供するために 自動モード で /usr/bin/gcc-4.5 を使います。 update-alternatives: エラー: /etc/alternatives/gcc.dpkg-tmp から /usr/bin/gcc-4.5 へのシンボリックリンクを作成できません: 許可がありません
権限ないのかよ…orz
気を取り直して
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.5 45 update-alternatives: /usr/bin/gcc (gcc) を提供するために 自動モード で /usr/bin/gcc-4.5 を使います。 $ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 46 update-alternatives: /usr/bin/gcc (gcc) を提供するために 自動モード で /usr/bin/gcc-4.6 を使います。 $ sudo update-alternatives --install /usr/bin/cpp cpp /usr/bin/cpp-4.5 45 update-alternatives: /usr/bin/cpp (cpp) を提供するために 自動モード で /usr/bin/cpp-4.5 を使います。 $ sudo update-alternatives --install /usr/bin/cpp cpp /usr/bin/cpp-4.6 46 update-alternatives: /usr/bin/cpp (cpp) を提供するために 自動モード で /usr/bin/cpp-4.6 を使います。
で、確認して
$ sudo update-alternatives --config gcc alternative gcc (/usr/bin/gcc を提供) には 2 個の選択肢があります。 選択肢 パス 優先度 状態 ------------------------------------------------------------ * 0 /usr/bin/gcc-4.6 46 自動モード 1 /usr/bin/gcc-4.5 45 手動モード 2 /usr/bin/gcc-4.6 46 手動モード 現在の選択 [*] を保持するには Enter、さもなければ選択肢の番号のキーを押してください:
これで切り替えができるよねw
-
前の記事
Xperia2011なICSカーネルについて 2012.05.05
-
次の記事
ICSがコンパイルできませんw(その2) いや、出来ました( ー`дー´)キリッ 2012.05.10
TYVM you’ve solved all my promlebs