Ubuntu 11.10 on VMware でICSビルド時のエラーと対策メモ

Posted by kwmt on Fri, Nov 25, 2011

新しくVMwareをインストールして、Ubuntu11.10 日本語Remix CDイメージをダウンロードして、これを見ながらICSのビルド環境を構築して、makeしたときにエラーが出たのでエラーの内容と対策をメモります。

最初に出たエラー

エラー内容
host C++: obbtool <= frameworks/base/tools/obbtool/Main.cpp :0:0: error: “_FORTIFY_SOURCE” redefined [-Werror] :0:0: note: this is the location of the previous definition cc1plus: all warnings being treated as errors make: *** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o] Error 1
原因
ブランチandroid-4.0.1_r1をダウンロードしたから。

詳しくはこちら→

http://code.google.com/p/android/issues/detail?id=20795

対策
masterブランチをダウンロードした。

たしかに、core/combo/HOST_linux-x86.mkが

HOST_GLOBAL_CFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0

のように修正されてた。これだとうまくいくらしい。

参考
http://e-xiao.blogspot.com/2011/10/resolve-build-errors-for-android-234.html

次に出たエラー

エラー内容
host Executable: adb (out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb)

host Executable: atree (out/host/linux-x86/obj/EXECUTABLES/atree_intermediates/atree)

host Executable: bb2sym (out/host/linux-x86/obj/EXECUTABLES/bb2sym_intermediates/bb2sym)

host Executable: bb_dump (out/host/linux-x86/obj/EXECUTABLES/bb_dump_intermediates/bb_dump)

/usr/bin/ld: cannot find -lncurses

collect2: ld returned 1 exit status

make: *** [out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb] Error 1

make: *** Waiting for unfinished jobs….

true

true

true

対策
libncurses5-devをインストールした。

$ sudo apt-get install libncurses5-dev

はじめに

http://source.android.com/source/initializing.html

の「Installing required packages」のタイミングで、入れ忘れてただけ。

最後に出たエラー

エラー内容
Install: out/host/linux-x86/bin/llvm-link

out/host/linux-x86/obj/STATIC_LIBRARIES/libLLVMCodeGen_intermediates/libLLVMCodeGen.a: file not recognized: File truncated

collect2: ld returned 1 exit status

make: *** [out/host/linux-x86/obj/EXECUTABLES/llvm-rs-cc_intermediates/llvm-rs-cc] Error 1

make: *** Waiting for unfinished jobs….

out/host/linux-x86/obj/STATIC_LIBRARIES/libLLVMCodeGen_intermediates/libLLVMCodeGen.a: file not recognized: File truncated

collect2: ld returned 1 exit status

make: *** [out/host/linux-x86/obj/EXECUTABLES/clang_intermediates/clang] Error 1

elapsed seconds: 175

wrote generated Main_*.java files to out/host/linux-x86/obj/EXECUTABLES/vm-tests_intermediates/main_files

対策
はじめからする。

具体的には、

Mydroid>rm -Rf *

いったん全削除して、

repo init -u http://android.googlesource.com/platform/manifest

して、

repo sync

して、

make -j4

参考
https://groups.google.com/group/android-building/browse_thread/thread/cae10abd771f2415?hl=en#

Nov 22 4:45 amのRANDYRKELLYさんの投稿に対しての、Nov 22,5:05 am のConley Owensさんの投稿



comments powered by Disqus