Contents ...
udn網路城邦
[Android] 在32位元系統下編譯Android 2.3的方法
2011/04/06 13:51
瀏覽313
迴響0
推薦1
引用0

最近在做android 的project,需要編譯android 2.3的版本,才剛make就發現錯誤訊息

 /usr/include/gnu/stubs.h:9: fatal error: gnu/stubs-64.h: No such file or directory

原因出在於使用的作業系統是32位元的ubuntu 10,無法編譯Android 2.2以上版本,當然,重灌整個編譯環境系統是很不智的,就上網找了一下解法囉!



解決方式:
編輯 build/core/main.mk
找到:
ifneq (64,$(findstring 64,$(build_arch)))
$(warning ************************************************************)
$(warning You are attempting to build on a 32-bit system.)
$(warning Only 64-bit build environments are supported beyond froyo/2.2.)

ifneq (64,$(findstring 64,$(build_arch)))
改成
ifneq (i686,$(findstring i686,$(build_arch)))

接著編輯下列檔案:
external/clearsilver/cgi/Android.mk
external/clearsilver/cs/Android.mk
external/clearsilver/java-jni/Android.mk
external/clearsilver/util/Android.mk
找到:
# This forces a 64-bit build for Java6
LOCAL_CFLAGS += -m64
LOCAL_LDFLAGS += -m64
全部改成
LOCAL_CFLAGS += -m32
LOCAL_LDFLAGS += -m32

最後來個MAKE,大約三分鐘內都沒看到錯誤訊息,就可以去休息一下囉(MAKE整包ANDROID需要三小時以上時間!)

有誰推薦more
你可能會有興趣的文章:

限會員,要發表迴響,請先登入