如何編譯Android原始碼

來源:互聯網
上載者:User

0.準備作業系統

如果需要編譯的版本<=2.2 可以用32位的linux,如果是>2.2的版本,要用64位的linux

推薦Ubuntu 

1. 安裝需要的工具

參考這個連結:http://source.android.com/source/download.html 

點Source > Getting the source

 

你可能會糾結於使用java1.5還是1.6, 當你想編譯Android比較早的版本時,會發現其實java1.5已經不被支援了,所以你在Ubuntu下直接apt-get是找不到的,這時你需要參考這個連結:http://blog.enea.com/Blog/bid/32050/Ubuntu-9-10-Java-5-and-the-Android-Open-Source-Project 

當你的系統中安裝了多個版本的java時,你可以通過 sudo update-alternatives --config java 來選擇你需要用的java版本。

 

2.Android的編譯主要是用git,當你會看到google主要是用的工具叫做repo,這個其實是個python指令碼,你需要手動下載它:

下載repo指令碼並使其可執行:

1 $ curl http://android.git.kernel.org/repo >~/bin/repo

2 $ chmod a+x ~/bin/repo

4)初始化repo

repo是android對git的一個封裝,簡化了一些git的操作。 

 

下一步就是使用repo去初始化代碼,和下載代碼:repo init -u git://android.git.kernel.org/platform/manifest.git 

這樣預設是下載的代碼樹中的master,如果需要別的分支可以參考 http://source.android.com/source/download.html 

這裡請注意,預設下載的時候是不包含kernel的原始碼的,如果你需要kernel的原始碼,你可以參考這個連結:

http://elinux.org/Android_Kernel_Download 

 

3.一些奇怪的問題:

 我安裝的是32bit的Ubuntu,在編譯主乾的代碼時,報錯說我需要64位的系統,還說需要java1.6。

你可以這樣解決:sudo apt-get install sun-java1.6-sdk

然後給自己修改原始碼,具體方法可以參考:

http://groups.google.com/group/android-platform/browse_thread/thread/b0bb991131589363 

 

4.make 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.