本文轉載自:http://blog.csdn.net/drg1612/article/details/44802533
我的編譯條件:
1 Ubuntu Kylin 14.04 長期支持版 下載地址 :?http://www.ubuntu-china.cn/download
2 我的電腦是聯想G470 i3處理器 內存4G,120g固體硬盤,配置不高,但是足夠編譯了(編譯花費了5小時)
3?Ubuntu我的分區狀況:/home 100g(至少80g),swap分區8g(至少4g),空間請務必滿足最低條件,不然無法編譯成功
4 一個速度快且穩定的v-p`n,我用的是green,線路選擇的是日本高速線路,差不多有10m帶寬?
?
前后我總共花費了3 天的時間,一直在看網上的教程,期間還有下載和編譯需要花費大量的時間,這個和我電腦配置低有很大的關系,最后結果還不錯,成功運行了虛擬機。
?
開始具體過程:
1 首先檢查是否滿足編譯的條件,缺一不可,如果你的swap分區(輸入 free -m查看)如果沒有4g,那么按照教程增加
具體教程見:http://blog.csdn.NET/mznewfacer/article/details/7334592
修改swap無需重啟電腦
還有v-p~n的事情,我是花錢買了一個月,18塊,不是廣告,畢竟花錢穩定點,同步安卓源碼庫必須要掛。
?
2 然后按照官網教程一步一步來
具體見http://source.Android.com/source/initializing.html
我總結一個簡化步驟:
(1)配置ubuntu的編譯環境(僅限于安卓5.1.0,其余版本請到官網看各自的編譯環境):
sudo apt-get?update
sudo apt-get?install openjdk-7-jdk
sudo apt-get?install bison g++-multilib?Git?gperf libxml2-utils make zlib1g-dev:i386 zip
(2)同步5.1.0源碼
2.1 安裝repo(用于同步庫的軟件,基于git)
mkdir?~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x?~/bin/repo
2.2 開始下載源碼(需要很長時間(14g左右),我當時記得掛了一晚上,下載好了,具體時間要看各自的v-p~n速度)
mkdir WORKING_DIRECTORY
cd WORKING_DIRECTORY
repo init -u https://android.googlesource.com/platform/manifest -b android-5.1.0_r3
repo sync
同步完成之后,目錄是這樣的:
(3)開始編譯
source build/envsetup.sh (編譯環境參數)
lunch aosp_arm-eng (目標設備)
make?-j4 (以4個線程開始編譯)
如果順利的話,我的機器花費了5個小時編譯(out目錄占29.1g),第一次編譯花費時間很長,以后增量更新速度就快了,編譯時間具體看個人機器了,編譯完成之后,終端會顯示:
?
然后輸入emulator運行虛擬機:
?
祝各位編譯順利!
?
3 我遇到的問題
3.1問題1:過時的API
?注: 某些輸入文件使用或覆蓋了已過時的 API。
注: 有關詳細信息, 請使用 -Xlint:deprecation 重新編譯。
?
如果此問題造成編譯停止,請看有沒有執行過:sudo apt-get?install bison g++-multilib git gperf libxml2-utils make zlib1g-dev:i386 zip
如果沒有造成編譯停止,請忽略
?
3.2問題2:內存溢出
make: *** [out/target/product/generic/obj/SHARED_LIBRARIES/libwebviewchromium_intermediates/LINKED/libwebviewchromium.so] 錯誤 1
make: *** 正在等待未完成的任務....
?
swap分區過小了,試試改成6g。
?
最后附上對我此次編譯幫助最大的文檔,感謝他們:
1 一些編譯出錯的解決方案
http://www.cnblogs.com/tao560532/p/3302444.html
?
2 目錄結構(學習資料)
http://www.it165.net/pro/html/201403/10393.html
?
3 深入理解Android編譯系統(學習資料)
http://blog.csdn.Net/huangyabin001/article/details/36383031