1. 程式人生 > >基於android2.3.5系統:Andriod與Linux交叉編譯工具[二]

基於android2.3.5系統:Andriod與Linux交叉編譯工具[二]

***************************************************************************************************************************
作者:EasyWave                                                                                 時間:2013.01.27

類別:Android系統原始碼分析系列                                                            宣告:轉載,請保留連結

注意:如有錯誤,歡迎指正。這些是我學習的日誌文章......

***************************************************************************************************************************

一:Android系統的編譯

 由於我是從網路上直接下載飛凌的6410下的Andriod2.3.4版本的原始碼,而且這個版本有個好處就是,它將jdk21.6.0_23也一併放在android的原始碼下,因此,就不需要再去安裝Java JDK,如果是在Linux來開發Android應用程式的話,那麼還是安裝一下比較好些。因為我這裡只是編譯Andriod系統和Linux系統,因此沒有太大的關係哦,如下圖所示:

已經將JDK1.6.0_23放在Android原始碼下了,同時也提供了一個build_android.sh的指令碼檔案,這樣就方便我們編譯整個Android了,我編譯了一下Android系統,總共花了四個小時,因為我沒有用mak -j2之類的命令,所以時間很長。build_andriod.sh的檔案如下:

看到了嗎,.  setenv 注意中間有空格的,這是什麼意思呢,很簡單,就相當於source setenv ,看到export,每次編譯的時候都會去設定java的路徑,還是繼續看看setenv檔案的內容吧,如下所示:

其實,最終還是會執行build/envsetup.sh檔案,具體的意思,這裡就不多說了。編譯完成之後,會看到out資料夾。如下:

看到這些內容之後,基本上可以說,編譯是成功了的。暫時用android2.3.4吧,Andriod2.3.5都還沒有移植呢。不過Andriod2.3.5和Android2.3.4的區別並不是很大。