Android源码下载&编译(高通)
0 前言
本文介绍如何下载高通平台的Android源码,然后进行编译。
相关:《Android源码下载&编译(TI)》
1 安装工具
下载Android源码需要git,repo等工具,启动repo是Google写的一个专门用于下载Android源码的工具,主要调用了git。
(1)安装git
sudo apt-get install git
(2)安装repo
repo是Google写的一个Python脚本,用于管理多个git仓库,专用于Android源码下载。
下载repo,改变可执行权限,然后移动到/usr/bin目录中即可:
chomd +x repo
sudo mv repo /usr/bin
2 下载Android
由于Google被墙了,因此无法直接从Google官网下载Android源码,因此需要另觅途径,高通开源网是一个不错的选择。本文在其中下载支持高通msm8909平台的Android源码,Android版本为6.0.1,详细步骤如下:
mkdir android-msm8909
cd android-msn8909
repo init -u git://codeaurora.org/platform/manifest.git -b release -m LA.BR.1.2.6.c1-02100-8x09.0.xml
repo sync -j4
注:
a)源码大小有40GB,下载过程要几个小时;
b)上述LA.BR.1.2.6.c1-02100-8x09.0.xml在高通开源网上查看:
3 编译Android
3.1 安装JDK
通过《Android源码编译--jdk版本查询》的方法查看上述源码所需的JDK版本,得知需要安装OpenJDK-1.7:
sudo apt-get install openjdk-7-jdk
3.2 编译
1)进入android-msm8909目录:
cd android-msm8909
source build/envsetup.sh
lunch 27
make -j4
# or
make -j4 showcommands dist
注:
- -j4, 开启4个线程;
- showcommands, 显示编译过程中执行的命令[38];
- dist, 将编译后产生的发布文件拷贝到out/dist目录中[38];
- lunch不加参数时,将会列出可选产品,本文选择27
3.3 编译结果
编译完成后,生产的相关镜像在out/target/product的子目录中,例如:
其中,linux内核编译结果保存在obj/KERNEL_OBJ目录中(Linux内核也一同被编译了,而无需另外独立编译!)。
4 编译sdk
详见《Android源码编译SDK》。
5 编译内核
make bootimage
6 编译其它模块
参考资料[37]总结了编译各个模块的方法:
make sdk - build the tools that are part of an SDK (adb, fastboot, etc.)
make snod - build the system image from the current software binaries
make services
make runtime
make droid - make droid is the normal build.
make all - make everything, whether it is included in the product definition or not
make clean - remove all built files (prepare for a new build). Same as rm -rf out/<configuration>/
make modules - shows a list of submodules that can be built (List of all LOCAL_MODULE definitions)
make <local_module> - make a specific module (note that this is not the same as directory name. It is the LOCAL_MODULE definition in the Android.mk file)
make clean-<local_module> - clean a specific module
make bootimage TARGET_PREBUILT_KERNEL=/path/to/bzImage - create a new boot image with custom bzImage
参考资料
[1]Ubuntu 下载 & 编译 Android5.1 源码
[3]在Ubuntu系统中下载Android源码(5.1.1_r8)
[6]下载android4.4.2源码全过程(附已下载的源码)
[8]基于Ubuntu 14.04 LTS编译Android4.4.2源代码
[10]高通android平台源码 (2011-03-28 10:56)
[11]在官网途径无法下载到android 源码时,,你可通过这种方式去下载
[13]Android for MSM Project
[14]Qualcomm平台android开发总结
[15]高通平台android开发总结 MSM平台上的AMSS
[16] android源码下载(上)
[17]android源码下载(下)
[18]开源代码下载路径
[19]如何下载并编译Android4.0内核源码goldfish(图文)
[20]Android源码、内核编译
[21]如何下载Android kernel内核源代码,编译烧写验证
[24]在Ubuntu 14.04系统中编译Android 5.1.1源码
[25]Android AOSP 5.1.0 & 5.0.1源代码百度云下载
[28]Android学习系列(38)--Android源码下载和编译
[33]android编译SDK问题汇总
[34]如何在linux下编译windows版android sdk
[35]ubuntu12.04(64bit)编译android4.2.2源代码及SDK步骤