轉(zhuǎn)發(fā)請注明出處:
安卓猴的博客(http://sunjiajia.com)
前言
編譯Android源碼是為了更好的學(xué)習(xí)源碼,當(dāng)然溶推,如果要做第三方ROM適配碍脏,也可以嘗試;我們這篇重點學(xué)習(xí)如下內(nèi)容:
- 如何在Ubuntu下編譯Android5.1.1源碼卖擅;
- 導(dǎo)入Android Studio進(jìn)行源碼閱讀鸣奔。
配置編譯環(huán)境
1.需要Ubuntu 64bit,建議Ubuntu14.04 64-bit惩阶;
2.安裝openJDK 7:
$ sudo apt-get update
$ sudo apt-get install openjdk-7-jdk
3.更新jDK環(huán)境變量:
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
4.為Ubuntu安裝必須的packages:
$ sudo apt-get install bison g++-multilib git gperf libxml2-utils make python-networkx zlib1g-dev:i386 zip
開始編譯
1.進(jìn)入源碼根目錄挎狸,加速下載源碼的方法請移步:《國內(nèi)鏡像加速Android源碼下載》:
$ cd android_source
2.初始化編譯環(huán)境:
$ . build/envsetup.sh
3.選擇編譯目標(biāo),如果僅僅是為了閱讀源碼學(xué)習(xí)断楷,就選擇aosp_arm-eng:
$ lunch
4.開始編譯锨匆,這里使用了4個并發(fā)數(shù):
make -j4
5.漫長的等待,時間不等脐嫂,根據(jù)硬件配置而定统刮,大致需要2h~10h之間。
6.編譯過程中账千,如果出現(xiàn)任何問題侥蒙,直接Google就行了;我的經(jīng)歷是匀奏,出現(xiàn)錯誤是由于源碼下載不完整鞭衩,為了避免,請移步《國內(nèi)鏡像加速Android源碼下載》娃善。
7.編譯成功后论衍,終端會有如下提醒:
#### make completed successfully (08:04:50 (hh:mm:ss)) ####
導(dǎo)入Android Studio
1.編譯完成后,在源碼根目錄下聚磺,執(zhí)行:
mmm development/tools/idegen/
2.等待片刻坯台,終端提示以下內(nèi)容,說明android.iws, android.ipr, android.iml生成成功:
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瘫寝,選擇打開一個現(xiàn)有的Android Studio項目蜒蕾,選擇Android源碼的根目錄,導(dǎo)入即可稠炬,這里起作用的是android.irp文件。在配置sdk版本之后就可以查看Android源碼了咪啡。
4.提醒一下首启,常用Widgets的源碼在/frameworks/base/core/java/android/widget
目錄結(jié)構(gòu)下,也可以按ctrl+N
尋找源碼文件撤摸。
結(jié)束
Android5.1.1源碼下載完畢毅桃,也編譯完畢,同時准夷,也導(dǎo)入到Android Studio供我們欣賞源代碼的美麗钥飞。