ubuntu 12.04编译ics

1、安装依赖包,其实就是官网上那一步:

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev:i386 g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386

2、安装sun-java

按照官网上说的,openjdk编译有问题,所以必须得安装sun官方的JDK。先从sun官网上下载JDK,2.3或者更新的版本用java6,2.2及以前的版本用java5。我们的版本是4.0.3,所以应该下载jdk6,这里我们用的是jdk-6u22-linux-i586.bin。先将jdk-6u22-linux-i586.bin copy到/opt,然后安装即可。

下载网址:http://www.oracle.com/technetwork/java/javase/archive-139210.html

sudo cp jdk-6u22-linux-i586.bin/opt
cd /opt
sudo ./jdk-6u22-linux-i586.bin

然后修改环境变量:


sudo vim /etc/environment
//将/opt/jdk1.6.0_22/bin:/opt/jdk1.6.0_22/lib:/opt/jdk1.6.0_22添加到PATH最前面,结果类似于
PATH="/opt/jdk1.6.0_22/bin:/opt/jdk1.6.0_22/lib:/opt/jdk1.6.0_22:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"

执行:source /etc/environment

注意:必须把路径加载最前面,以防止系统使用openjdk,或者你把openjdk卸载也行。


3、将默认的gcc4.6换成gcc4.4,太高的gcc版本导致出现各种错误,比如error: “_FORTIFY_SOURCE” redefined [-Werror]。

sudo apt-get install gcc-4.4 g++-4.4
cd /usr/bin
sudo ln -snf gcc-4.4 gcc
sudo ln -snf g++-4.4 g++

然后继续编译,期间可能还发生g++ selected multilib '32' not installed的错误,需要:

sudo apt-get install g++-4.4-multilib


剩下的就是下载Android Source,这个按官网上照做就行。编译源代码:

build/envsetup.sh
lunch full_x86-eng
make -j8

另:如果要编译2.2.只需要安装lib32z1-dev.即

sudo apt-get install lib32z1-dev

原文地址:https://www.cnblogs.com/chengliu/p/3636419.html