编译Android5.1.1源码

2019-01-29 10:54:20 浏览数 (1)

前言

编译Android源码是为了更好的学习源码,当然,如果要做第三方ROM适配,也可以尝试;我们这篇重点学习如下内容:

  • 如何在Ubuntu下编译Android5.1.1源码;
  • 导入Android Studio进行源码阅读。

今天你好吗

配置编译环境

1.需要Ubuntu 64bit,建议Ubuntu14.04 64-bit;

2.安装openJDK 7:

代码语言:javascript复制
$ sudo apt-get update
$ sudo apt-get install openjdk-7-jdk

3.更新jDK环境变量:

代码语言:javascript复制
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac

4.为Ubuntu安装必须的packages:

代码语言:javascript复制
$ sudo apt-get install bison g  -multilib git gperf libxml2-utils make python-networkx zlib1g-dev:i386 zip

开始编译

1.进入源码根目录,加速下载源码的方法请移步:《国内镜像加速Android源码下载》:

代码语言:javascript复制
$ cd android_source

2.初始化编译环境:

代码语言:javascript复制
$ . build/envsetup.sh

3.选择编译目标,如果仅仅是为了阅读源码学习,就选择aosp_arm-eng

代码语言:javascript复制
$ lunch

4.开始编译,这里使用了4个并发数:

代码语言:javascript复制
make -j4

5.漫长的等待,时间不等,根据硬件配置而定,大致需要2h~10h之间。

6.编译过程中,如果出现任何问题,直接Google就行了;我的经历是,出现错误是由于源码下载不完整,为了避免,请移步《国内镜像加速Android源码下载》。

7.编译成功后,终端会有如下提醒:

代码语言:javascript复制
#### make completed successfully (08:04:50 (hh:mm:ss)) ####

导入Android Studio

1.编译完成后,在源码根目录下,执行:

代码语言:javascript复制
mmm development/tools/idegen/

2.等待片刻,终端提示以下内容,说明android.iws, android.ipr, android.iml生成成功:

代码语言:javascript复制
make: Entering directory `/home/monkey/Android/android-5.1.1_r3'
host Java: idegen (out/host/common/obj/JAVA_LIBRARIES/idegen_intermediates/classes)
Install: out/host/linux-x86/framework/idegen.jar
make: Leaving directory `/home/monkey/Android/android-5.1.1_r3'

#### make completed successfully (9 seconds) ####

3.打开Android Studio,选择打开一个现有的Android Studio项目,选择Android源码的根目录,导入即可,这里起作用的是android.irp文件。在配置sdk版本之后就可以查看Android源码了。

4.提醒一下,常用Widgets的源码在/frameworks/base/core/java/android/widget目录结构下,也可以按ctrl N寻找源码文件。

结束

Android5.1.1源码下载完毕,也编译完毕,同时,也导入到Android Studio供我们欣赏源代码的美丽。

0 人点赞