《android 全志a10(2.3.4)開發二》文檔詳細可下載地址:http://www.a10bbs.com/forum.php?mod=viewthread&tid=504&extra=
編譯源碼注意事項
注意:請用戶在首次將工程下載到本地進行編譯時請從git獲取未包含任何編譯後文件的代碼,雖然每次通過makeclean命令能夠清楚編譯生成的中間文件,但是該makefile仍然存在不能完全清除中間文件的情況;我自己就因爲代碼是拷貝別人電腦上的而導致屢次編譯失敗,無法分析錯誤原因的情況,在android源碼編譯中該情況更應該得到重視;中間文件未清楚會導致在編譯時出現各種未知的錯誤提示;
源碼結構說
說明:source tree, 必須嚴格按照這個目錄結構存放.缺省是 ~/workspace/exdroid
|-- android2.3.4 ---android源碼
|-- lichee ---linux內核
| |-- buildroot
| |-- build.sh
| |-- linux-2.6.36
| `-- out ---生成鏡像文件的目錄,編譯成功就會生成此目錄
|-- tools
| |-- crane_pack_src
| |-- crane-win-v2
| |-- LogoGen
| |-- pack
| |-- pack_25
| `-- production
說明:在存放文件時,android2.3.4源碼,lichee必須在同級目錄,因爲在android源碼中通過相對路徑的方式調用內核編譯的部分頭文件,鏡像文件;例如:
內核編譯
1. 進入lichee
2. 進入lichee/linux-2.6.36目錄
先執行 make clean 清除之前
回到上一目錄cd ..
再執行命令:./build.sh -psun4i_crane進行編譯
3. 編譯順利的話,您應該看到生成lichee/out,目錄裏面有生成的內容,其中bImage就是生成的內核鏡像,如圖:
4. 常見錯誤及解決方案
3.1 錯誤一
解決方法:到
lichee/linux-2.6.36/modules/wifi/usi-bcm4329/v4.218.248.15/open-src/src/dhd/linux
1.刪除dhd-cdc-sdmmc-gpl-2.6.36-android目錄
2.進入lichee/linux-2.6.36目錄,先執行 make clean 清除之前
3.再執行命令:./build.sh-p sun4i_crane進行編譯
Android2.3.4源碼編譯
1. 首先從git上下載源碼,這樣能夠得到一份未編譯過的,乾淨的代碼庫;
2. 執行 cd android2.3.4 進入該目錄;
3. 執行腳本 source build/envsetup.sh
4. Lunch
5. 選擇7
6. Make -j8
7. 編譯大概1小時30分鐘後可編譯完成 最後在根目錄中生產out目錄,如圖