使用repo下載官方http://android.git.kernel.org/中的Android代碼
mkdir mydroid
cd mydroid
sudo apt-get install git-core curl
curl http://android.git.kernel.org/repo > ./repo
chmod a+x ./repo
取得整個版本庫的代碼
./repo init –u git://android.git.kernel.org/platform/manifest.git
或者只取一個分支
./repo init –u git://android.git.kernel.org/platform/manifest.git -b gingerbread
同步分支
./repo sync
安裝編譯工具
sudo apt-get install build-essential
安裝一些庫以便可以編譯android的源代碼
(一些錯誤可以參考http://0123.blog.163.com/blog/static/47883120101024104416786/)
(http://dev.10086.cn/cmdn/wiki/index.php?doc-view-4390.html)
當然之前需要安裝下jdk,可以安裝ubuntu中的openjdk-6-jdk,如果安裝了多個JDK,
可以通過update-alternatives --config java來選擇使用哪一個
編譯需要一段時間,編譯完成後運行模擬器
生成的鏡像在out/target/product/generic下,emulator在out/host/linux-x86/bin下,
默認的界面是HVGA可以使用-skin來切換SKIN,比如WVGA800
可以在android目錄下面建立一個執行腳本來啓動模擬器
以後需要同步分支的話,只需要執行
./repo sync
編譯某個單獨的模塊可以先進入那個模塊的目錄然後使用mm進行編譯
cd packages/apps/Launcher2
mm
參考文章:
0.官方下載說明
Get Android Source Code
http://source.android.com/source/download.html
1.android2.3源碼下載編譯全過程(附圖及文檔)修改版
http://tanghaibo001.blog.163.com/blog/static/906861202011233373279/
2.編譯Android時候的錯誤
http://0123.blog.163.com/blog/static/47883120101024104416786/
3.Android編譯中m、mm、mmm的區別
http://zwkufo.blog.163.com/blog/static/2588251201011301104766/
4.在Ubuntu下編譯Android源碼並運行Emulator
http://bbs.starandroid.com/showtopic-2071.aspx