由于Google被屏蔽,所以直接从国外网站获取source code会出现异常,
幸好国内也有对应的镜像提供,而且相对又快,方法如下:
1. 获取repo
2. 修改repo
将 git-repo下的repo里的
3. 获取manifest
4. 获取代码
5. 获取交叉编译器
由于默认从Android5.1中获得的GCC工具链是4.8,使用它编译kernel时可能有异常,所以换成GCC4.0。
7. 获取u-boot
8. 获取jdk1.7
Android 5.1 用到的jdk不再是Oracle 的 jdk ,而是开源的 openjdk,在ubuntu安装好后,使用如下命令安装jdk:
幸好国内也有对应的镜像提供,而且相对又快,方法如下:
1. 获取repo
# cd ~
# git clone git://aosp.tuna.tsinghua.edu.cn/android/git-repo.git/
# chmod 755 git-repo/repo
2. 修改repo
将 git-repo下的repo里的
REPO_URL = 'https://gerrit.googlesource.com/git-repo'
改成
REPO_URL = 'git://aosp.tuna.tsinghua.edu.cn/android/git-repo'
3. 获取manifest
# mkdir Android_5.1
# ~/git-repo/repo init -u https://aosp.tuna.tsinghua.edu.cn/android/platform/manifest -b android-5.1.1_r1
# cd ~/myandroid/.repo
将manifest.xml中
fetch=".." />
改成
fetch="git://aosp.tuna.tsinghua.edu.cn/android/" />
4. 获取代码
# ~/git-repo/repo sync
5. 获取交叉编译器
由于默认从Android5.1中获得的GCC工具链是4.8,使用它编译kernel时可能有异常,所以换成GCC4.0。
# cd ~/Android_5.1/prebuilts/gcc/linux-x86/arm
# git clone https://aosp.tuna.tsinghua.edu.cn/android/platform/prebuilts/gcc/linux-x86/arm/arm-
eabi-4.6
# cd arm-eabi-4.6
# git checkout android-4.4.3_r1
6. 获取kernel
$ cd ~/myandroid
$ git clone git://git.freescale.com/imx/linux-2.6-imx.git kernel_imx
$ cd kernel_imx
$ git checkout l5.1.1_2.1.0-ga
7. 获取u-boot
$ cd ~/myandroid/bootable/bootloader
$ git clone git://git.freescale.com/imx/uboot-imx.git uboot-imx
$ cd uboot-imx
$ git checkout l5.1.1_2.1.0-ga
8. 获取jdk1.7
Android 5.1 用到的jdk不再是Oracle 的 jdk ,而是开源的 openjdk,在ubuntu安装好后,使用如下命令安装jdk:
$sudo apt-get install openjdk-7-jdk
设置环境变量:
$ vim .bashrc
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
检查:
$ java -version
java version "1.7.0_95"
OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-0ubuntu0.14.04.1)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)