[Android5.0源码透析](三)Android源码编译及SDK生成

一、编译源代码

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)导入所需环境变量和其他参数

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

猜你喜欢

转载自blog.csdn.net/gengkui9897/article/details/81518211