一、编译源代码
1.环境搭建(Ubuntu)
(1)安装JDK
cd /usr
mkdir java
cd java
## 获取JDK1.7
wget http://xxxx/jdk-7u22-linux-i586.bin
sudo chmod 755 jdk-7u22-linux-i586.bin
sudo sh jdk-7u22-linux-i586.bin
(2)设置JDK环境变量
将环境变量添加到主文件夹的.bashrc文件中,并使用source命令使其生效。
export JAVA_HOME=/usr/java/jdk1.7.0_27
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/bin:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/bin/tools.jar:$$JRE_HOME/bin
export ANDROID_JAVA_HOME=$JAVA_HOME
(3)安装所需编译工具
sudo apt-get install git-core gnupg flex bison gperf build-essential\
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs\
x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev\
libg11-mesa-dev g++-multilib mingw32 tofrodos python-markdown\
libx11-dev:i386\
(4)开启高速缓存(可选)
打开主目录下的".bashrc"文件,在末尾添加:
export USE_CCACHE=1
保存后退出,需要重新登录系统才能生效。
然后转到源代码目录,通过命令设置缓存大小(此处设为50G):
prebuilts/misc/linux-x86/ccache/ccache -M 50G
(5)导入所需环境变量和其他参数
扫描二维码关注公众号,回复:
3314386 查看本文章
source build/envsetup.sh
(6)选择变异目标
运行lunch命令后,根据给出的内容选择输入相应编译目标对象的数字编号即可
(7)执行编译
make -j8
编译可能需要几个小时,当编译完成后,可在out/target/product/generic目录找到各个文件
二、生成SDK
在Android5.0的源代码根目录有一个sdk目录,执行命令
make SDK
编译完成后将在/out/host/linux-x86/sdk下生成SDK