How to compile Android 2.3 on Ubuntu 10.04 32bit

简介:

官方编译环境: 
Ubuntu 10.04 64bit 
64-bit Sun JDK

本文编译环境: 
Ubuntu 10.04 32bit 
32-bit Sun JDK

参考:

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

安装java1.6

met issues 
1:issue "You are attempting to build on a 32-bit system"

How to fix: 
$ vim build/core/main.mk 
change 
ifneq (64,$(findstring 64,$(build_arch))) 
to 
ifneq (i686,$(findstring i686,$(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


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

change 
LOCAL_CFLAGS += -m64 
LOCAL_LDFLAGS += -m64 
to 
LOCAL_CFLAGS += -m32 
LOCAL_LDFLAGS += -m32


2:issue "host C: libclearsilver-jni <= external/clearsilver/java-jni/j_neo_util.c 
In file included from /usr/include/features.h:378, 
                 from /usr/include/string.h:26, 
                 from external/clearsilver/java-jni/j_neo_util.c:1: 
/usr/include/gnu/stubs.h:9:27: error: gnu/stubs-64.h: 没有那个文件或目录 
make: *** [out/host/linux-x86/obj/SHARED_LIBRARIES/libclearsilver-jni_intermediates/j_neo_util.o]错误"

How to fix: 
sudo apt-get install lib64z1-dev libc6-dev-amd64 g++-multilib lib64stdc++6


3:issue: 
host SharedLib: libneo_util (out/host/linux-x86/obj/lib/libneo_util.so) 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.3.4/libstdc++.so when searching for -lstdc++ 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.3.4/libstdc++.a when searching for -lstdc++ 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.3.4/libstdc++.so when searching for -lstdc++ 
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.3.4/libstdc++.a when searching for -lstdc++ 
/usr/bin/ld: cannot find -lstdc++ 
collect2: ld returned 1 exit status 
make: *** [out/host/linux-x86/obj/lib/libneo_util.so] Error 1

How to fix:

4 
frameworks/base/core/java/android/app/ListActivity.java:319: inconvertible types 
found : android.widget.AdapterView<capture of ?> 
required: android.widget.ListView 
onListItemClick((ListView)parent, v, position, id); 

Note: Some input files use or override a deprecated API. 
Note: Recompile with -Xlint:deprecation for details. 
Note: Some input files use unchecked or unsafe operations. 
Note: Recompile with -Xlint:unchecked for details.

How to fix: 
其实JDK的版本低了,用了1.5.0_06的版本,用1.6就可以了

5 arm-eabi-4.4.3

prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc -mthumb-interwork -Ibionic/libc/private -o out/target/product/generic/obj/lib/crtbegin_dynamic.o -c bionic/libc/arch-arm/bionic/crtbegin_dynamic.S

prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc: /lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.11' not found (required by prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc)

make: *** [out/target/product/generic/obj/lib/crtbegin_dynamic.o] 错误 1

这是在32位Ubuntu上编译引起的arm-eabi-4.4.3版本问题,所以需要修改arm-eabi-4.4.0:

$ mv arm-eabi-4.4.3 to arm-eabi-4.4.3.old

$ ln -s arm-eabi-4.4.0 arm-eabi-4.4.3


Reference: 
http://iopenfree.appspot.com/?p=4001 
http://0123.blog.163.com/blog/static/478831201061214128901/

分类:  linux tool


本文转自wanqi博客园博客,原文链接:http://www.cnblogs.com/wanqieddy/archive/2011/07/14/2106669.html 如需转载请自行联系原作者
相关文章
|
7月前
|
Ubuntu 网络协议 Java
【Android平板编程】远程Ubuntu服务器code-server编程写代码
【Android平板编程】远程Ubuntu服务器code-server编程写代码
|
Ubuntu Linux
Win10 Ubuntu子系统(内嵌ubuntu18.04)运行32bit Linux原生程序 解决Exec format error错误
Win10 Ubuntu子系统(内嵌ubuntu18.04)运行32bit Linux原生程序 解决Exec format error错误
198 0
|
7月前
|
Ubuntu Linux 开发工具
建立ubuntu下基于eclipse的android开发环境
建立ubuntu下基于eclipse的android开发环境
58 1
|
7月前
|
Ubuntu Android开发
Android Froyo基于32 bit ubuntu 10.10编译问题
Android Froyo基于32 bit ubuntu 10.10编译问题
38 1
|
7月前
|
Ubuntu Android开发 数据安全/隐私保护
【Android平板编程】远程Ubuntu服务器Code-Server编程写代码
【Android平板编程】远程Ubuntu服务器Code-Server编程写代码
105 0
|
7月前
|
Ubuntu 网络协议 Java
在Android平板上使用code-server公网远程Ubuntu服务器编程
在Android平板上使用code-server公网远程Ubuntu服务器编程
|
7月前
|
Ubuntu 网络协议 Linux
【Linux】Android平板上远程连接Ubuntu服务器code-server进行代码开发
【Linux】Android平板上远程连接Ubuntu服务器code-server进行代码开发
170 0
|
Ubuntu Android开发
ubuntu 12.04 安装 adb(Android Debug Bridge) 失败的解决方法
ubuntu 12.04 安装 adb(Android Debug Bridge) 失败的解决方法
237 0
|
Ubuntu
Ubuntu12.04(32bit)下安装bison和flex
Ubuntu12.04(32bit)下安装bison和flex
677 0
|
Ubuntu Linux 开发工具
UBUNTU安装Android Studio 3
UBUNTU安装Android Studio 3
112 0
下一篇
DataWorks