1.安装编译Android需要的工具包

$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl sun-java5-jdk zlib1g-dev  libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev gcc-multilib g++-multilib

注意:

a.64位系统要安装gcc-multilib g++-multilib32位系统不需要装.

b.Ubuntu 10.04需要添加额外的源才能安装Java5

deb http://cn.archive.ubuntu.com/ubuntu/ jaunty multiverse

deb http://cn.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse

设置正确的Java版本,Android编译需要Java5

执行 $ sudo update-java-alternatives -s java-1.5.0-sun或者sudo update-alternatives --config java 切换

 

2.设置java环境变量

export JAVA_HOME=/usr/local/jdk1.5.0_22

export PATH=$JAVA_HOME/bin:$PATH    //在原PATH之前

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

 

3.32位系统和64位系统组成分布式编译环境,编译时会出现生成的文件兼容,不能被加载。

错误:i386:x86-64 architecture of input file `out/host/linux-x86/obj/SHARED_LIBRARIES/libneo_cgi_intermediates/rfc2388.o'is incompatible with i386 output

解决:在32位机子上的源码build/core/combo/select.mk host的编译工具后加-m32

 HOST_CC := gethost -s distccserver distcc gcc-4.4 -m32

 HOST_CXX := gethost -s distccserver distcc g++-4.4 -m32

不管是32位或者64位系统,在此指定C文件一律使用32位编译。