Android系統源碼編譯全過程——下載Android源檔案並編譯

來源:互聯網
上載者:User
 編譯Android系統源碼需要以下工具:git工具,repo工具,java sdk,主機編譯工具等
我的實驗環境是ubuntu 10.10,步驟如下
1.開啟終端輸入
alex@alex-Linux:~$ sudo -i
root@alex-Linux:~$ apt-get install git-core flex bison gperf libesd0-dev zip
root@alex-Linux:~$ apt-get install libwxgtk2.6-dev zlib1g-dev build-essential libstdc++5
root@alex-Linux:~$ apt-get install tofrodos x-dev libx11-dev libncurses5-dev
root@alex-Linux:~$ apt-get install sun-java5-jdk
如果在上述過程中提示無法找到源,請參閱在源配置中添加ubuntu9.04源
2.編譯Android系統源碼官方推薦使用Java5.如果本機安裝了Java6,應將其配置成java5.需要卸載java6
alex@alex-Linux:~$ apt-get remove sun-java6-jdk
3.配置java環境
root@alex-Linux:/etc/apt# update-alternatives --config java
  選擇       路徑                                    優先順序  狀態
------------------------------------------------------------
* 0            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      自動模式
  1            /usr/lib/jvm/java-1.5.0-sun/jre/bin/java   53        手動模式
  2            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      手動模式
  3            /usr/lib/jvm/java-6-sun/jre/bin/java       63        手動模式
選擇1
4.Android系統源碼在編譯過程中需要編譯主機工具,所以還需要主機打gcc工具鏈,而對於編譯目標機檔案,ANdroid在prebuilt目錄中整合了gcc交叉編譯工具鏈。repo是對調用git打封裝打工具,安裝repo
alex@alex-Linux:~$ sudo -i
root@alex-Linux:~# cd /bin
root@alex-Linux:/bin# curl http://android.git.kernel.org/repo > ~/bin/repo
如果提示curl未安裝,請輸入sudo apt-get install curl
設定bin/repo的可執行許可權alex@alex-Linux:~/bin$ chmod a+x ~/bin/repo
5.下載Android源碼 程式碼程式庫打路徑為android.git.kernel.org 可以通過網頁瀏覽程式碼程式庫的內容。在使用者主目錄建立androidsource進入該目錄
alex@alex-Linux:~/androidsource$ repo init-u git://android.git.kernel.org/platform/manifast.git
當出現Your Name [xxx]:
Your Email[xxx@xnadevelop.com]:時輸入相應使用者名稱和Email,經過repo init後,執行repo sync 下載Android系統源檔案
時間很長,請耐心等待。
下載完畢後進入源碼所在目錄輸入make
進行編譯。時間很長,同樣請耐心等待。
最後輸出一下文字
target SharedLib: sensors.mahimahi (out/target/product/generic/obj/SHARED_LIBRARIES/sensors.mahimahi_intermediates/LINKED/sensors.mahimahi.so)
target Non-prelinked: sensors.mahimahi (out/target/product/generic/symbols/system/lib/hw/sensors.mahimahi.so)
target Strip: sensors.mahimahi (out/target/product/generic/obj/lib/sensors.mahimahi.so)
Generated: (out/target/product/generic/android-info.txt)
Target system fs image: out/target/product/generic/obj/PACKAGING/systemimage_intermediates/system.img
Install system fs image: out/target/product/generic/system.img
Target ram disk: out/target/product/generic/ramdisk.img
Target userdata fs image: out/target/product/generic/userdata.img
Installed file list: out/target/product/generic/installed-files.txt

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.