itop4412開發板Android4.4舊源碼編譯

注意:本小節,介紹的舊源碼指的是「20170803」以前的源碼。java

在網盤目錄中「iTOP4412 開發板資料彙總(不含光盤內容)\iTOP-4412 開發板系統源android

碼及鏡像(其餘)\android_4.4.4 源碼以及對應 Kernel 源碼」中下載 Android4.4.4 的 文件git

系統,並經過 github 下載 uboot(Android4.4 的 uboot 源碼和 Android4.0.3 徹底同樣)github

和 kernel 的源碼(參考附錄六)。windows

5.4.2.1 uboot 的編譯瀏覽器

Android4.4.4 對應 uboot 的源碼,編譯器,參數配置,編譯腳本以及編譯參數和jvm

Android4.0.3 的 uboot 所有如出一轍。ui

5.4.2.2 Linux 內核的編譯blog

源碼目錄內存

網盤下載 Android4.4.4 對應的源碼。在網盤「iTOP-4412 開發板系統源碼及鏡像(其

他)」→「android_4.4.4 源碼及鏡像」目錄下。

編譯器

Android4.4.4 對應內核的編譯器和 Android4.0.3 的內核編譯器如出一轍。

參數配置

內核的編譯是組合式配置文件,基本的配置文件名是「config_for_android_YY」,YY 表

示用下表所示的參數替代。

如上表所示,若是須要 Android4.4.4 支持 WiFi,則須要配置對應的參數。

編譯生成內核鏡像舉例

和 Android4.0.3 內核同樣,若是須要編譯對應核心板的內核,首先使用 cp 命令將對應

的配置文件覆蓋掉」.config」,而後在執行編譯命令「make zImage」。

生成內核鏡像的目錄也是「arch」-->「arm」-->「boot」。

5.4.2.3 Android4.4.4 的編譯

Android4.4.4 源碼在網盤「iTOP-4412 開發板系統源碼及鏡像(其餘)\android_4.4.4

源碼以及對應 Kernel 源碼」目錄中下載,編譯器和參數配置和 Android4.0.3 如出一轍。

更新環境 javap

編譯 Android4.4.4,還缺乏一個「javap」命令,使用命令:

「update-alternatives --install "/usr/bin/javap" "javap"

"/usr/lib/jvm/jdk1.6.0_43/bin/javap" 1」

更新一下,以下圖所示。

源碼下載

內核的源碼也能夠在 github 上下載,具體參考使用手冊附錄 6.2,附錄中有迅爲

Android4.4 對應內核源碼 github 下載地址。

使用手冊附錄中有介紹 repo 下載 Android4.4 源碼的方法,可是從今年(2016)開始,

repo 常常性的沒法下載和使用。因此最好到迅爲百度網盤中下載源碼(目錄參考使用手冊編

譯章節),選取日期最近的目錄下載便可。

網盤中源碼包通常是 gz 後綴、7z 或者 rar 後綴。gz 後綴能夠直接在 Ubuntu 下解壓;

7z 和 rar 後綴都是須要先在 windows 下解壓出 gz 後綴壓縮包,而後再在 Ubuntu 下解壓。

內核以及 Android 源碼路徑

編譯 Android4.4 源碼的時候,必定要注意內核源碼的目錄。在和 Android 源碼目錄

「 iTop4412_KK4.4_git 」的同一級目錄下,新建一個 kernel 目錄,而後將內核源碼放到

kernel 目錄下,要使用迅爲默認的文件名「iTop4412_Kernel_3.0」。

例如:在 Android4.4 的源碼目錄下,使用命令

「ls ../kernel/iTop4412_Kernel_3.0/」,以下圖所示,內核的目錄纔是正確的。

另外在編譯 Android4.4 以前,必須成功編譯 Android4.4 對應的內核。

而後進入 Android4.4.4 源碼解壓後獲得文件夾「iTop4412_KK4.4」中,使用命令

「./build_android.sh」,運行一鍵編譯腳本,開始編譯 Android4.4.4。注意:編譯

Android4.4.4 必須保證給 Ubuntu 系統提供 3G 以上內存。這裏「提供 3G 以上內存」的意

思,不單單是指在 VMware Workstations 虛擬機中設置分配 3G 內存。例如,用戶在編譯的

時候,PC 機的內存一共是 4G,在虛擬機中設置分配 3G 內存,可是在 Windows 系統下,開

着 QQ,殺毒軟件,音樂播放器,瀏覽器等等,這樣在 Windows 下佔用的內存就快 2G 了,

那麼虛擬機會自動調整到只佔用 2G,甚至不到 2G 的內存,這樣是無法編譯經過的。

正確的分配內存方法是,首先給虛擬機分配 3G 以上內存,而後在 Windows 下關掉儘可能

多的沒必要要的應用,關掉儘可能多應用的後臺程序。

固然,若是用戶的 PC 是 8G 或者 16G 內存,隨意就成。

以下圖所示,編譯完成。在文件夾

「iTop4412_KK4.4/out/target/product/smdk4x12」中,生成鏡像「system.img」和

「ramdisk-uboot.img」。

這裏還須要注意的是,Android4.4.4 源碼須要佔用較大的空間,用戶須要確認有足夠的

空間纔可以成功編譯。Android4.0.3 編譯完成後總共大約佔用 18G 的空間,Android4.4.4 編

譯完成後總共佔用大約 36G 的空間,以下圖。

用戶徹底按照步驟編譯錯誤,可使用「df -l」查看一下盤符剩餘空間還剩下多少,以下

圖所示,若是是已使用 100%,則是空間不足。

相關文章
相關標籤/搜索