Ubuntu32位编译Android2.3 -Gingerbread

来源:互联网 发布:空巢老人调查数据2017 编辑:程序博客网 时间:2024/06/16 09:38

编译的过程中遇到下面的错误:

************************************************************

You are attempting to build on a 32-bit system.

Only 64-bit build environments are supported beyond froyo/2.2.

************************************************************

这是因为在Makefile中检测了CPU的字长。我直接把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.)
$(warning ************************************************************)#$(error stop)
endif

接下来又遇到下面的错误:

Docs droiddoc: out/target/common/docs/api-stubs

Could not load ‘clearsilver-jni’

java.library.path = out/host/linux-x86/lib

make: *** [out/target/common/docs/api-stubs-timestamp] Error 45

make: *** Waiting for unfinished jobs….

Could not load ‘clearsilver-jni’

java.library.path = out/host/linux-x86/lib

make: *** [out/target/common/docs/doc-comment-check-timestamp] Error 45

这是由于clearsilver在编译时如果检测到使用Java JDK 6,就使用64位编译。要避开此错误,需要修改下面四个文件:

  • external/clearsilver/cgi/Android.mk
  • external/clearsilver/java-jni/Android.mk
  • external/clearsilver/util/Android.mk
  • external/clearsilver/cs/Android.mk

把这四个Makefile中的下列语句注掉即可:

# This forces a 64-bit build for Java6# Comment by Easwy# LOCAL_CFLAGS += -m64# LOCAL_LDFLAGS += -m64 

然后在external/clearsilver 目录中执行一下make clean ,然后回到项目根目录,继续make即可。

原创粉丝点击