編譯Android源碼:
1,我的系統是Ubuntu9.10
--------------------------------------
2,安裝相關的包:
sudo apt-get install build-essential
sudo apt-get install make
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install libc6-dev
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install patch
sudo apt-get install texinfo
sudo apt-get install libncurses-dev
sudo apt-get install git-core gnupg //(gnupg系統可能已內建)
sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl
sudo apt-get install ncurses-dev
sudo apt-get install zlib1g-dev
sudo apt-get install valgrind(可選,有21M大,我覺得一般人是用不到的)
sudo apt-get install python2.5
sudo apt-get install sun-java5-jdk(一定用java5,不然編譯出錯)
---------------------------------------
3,建立android-src目錄,用來存放android源碼
mkdir android-src
4,$cd android-src
$mkdir bin---用來存放repo指令碼的
$cd bin
$ curl http://android.git.kernel.org/repo > repo
$ sudo mv repo ~/android-src/bin
$ sudo chmod a+x ~/android-src/bin/repo
----------------------------------------
5,進入android-src目錄
$cd android-src
$./bin/repo init -u git://android.git.kernel.org/platform/manifest.git
$repo sync
把源碼下下來
----------------------------------------
6,然後就make了
你也可以先
$source build/envsetup.sh
$choosecombo
$m;m sdk
把源碼和sdk都編譯出來
----------------------------------------
7, 後續編譯:
先在android目錄下執行
$ . build/envsetup.sh
然後你就會多出幾個可用的命令。在改了Contacts連絡人項目後,可以簡單的執行一下命令來單獨編譯這個部分:
$mmm packages/apps/Contacts/
為了可以直接測試改動,需要產生新的system.img,在android目錄下執行:
$ make snod
當然,如果你改動的是emulator或者其它外圍相關的,而非系統內部的東西,就不只是要重建system.img了
如果編譯成功了,在out裡面可以看到system.img,boot.img,userdata.img等
註明:QQ技術交流群:108614806 感興趣的加一下。