您好,登錄后才能下訂單哦!
本篇內容主要講解“Android4.4源碼編譯的知識點有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Android4.4源碼編譯的知識點有哪些”吧!
5.4.1.1 uboot 的編譯
Android4.4.4 對應 uboot 的源碼,編譯器,參數配置,編譯腳本以及編譯參數和
Android4.0.3 的 uboot 全部一模一樣。
5.4.1.2 Linux 內核的編譯
源碼目錄
網盤下載 Android4.4.4 對應的源碼。在網盤“iTOP-4412 開發板系統源碼及鏡像(其
他)”→“android_4.4.4 源碼及鏡像”目錄下,在最新日期的文件夾下的“iTop4412-
android4.4-kernel_xxxx.tar.gz”壓縮包,xxxx 表示日期。
編譯器
Android4.4.4 對應內核的編譯器和 Android4.0.3 的內核編譯器一模一樣。
參數配置
內核的編譯是組合式配置文件,基本的配置文件名是“config_for_android_XX_YY”,
XX,YY 表示用下表所示的參數替代。POP 和 SCP 分別對應核心板的 POP 和 SCP;elite 和
super 分別對應精英版和全能版;no_wifi 參數僅用于精英版,表示不支持 WiFi 模塊(如果沒
有 WiFI 模塊,那么就需要配置為 no_wifi)。
如上表所示,如果需要 Android4.4.4 支持 WiFi,則需要配置對應的參數,不支持 WiFi
也需要進行對應配置。
編譯生成內核鏡像舉例
和 Android4.0.3 內核一樣,如果需要編譯對應核心板的內核,首先使用 cp 命令將對應
的配置文件覆蓋掉“.config”。
如果用戶要使用 5 寸屏幕,先要參考用戶手冊“5.5 支持 5 寸屏的內核補丁文件”,給內
核打補丁,然后使用命令“vim .config”,在文件中搜索關鍵詞
“CONFIG_TOUCHSCREEN_GT9XX=y”,在“CONFIG_TOUCHSCREEN_GT9XX=y”之
后添加一行“CONFIG_TOPEET_LCD5X0=y”,添加完成之后,如下圖所示。如果用戶不使
用 5 寸屏幕,則可以跳過這一步。
最后執行編譯命令“make zImage”。
生成內核鏡像的目錄也是“arch”-->“arm”-->“boot”。
例如:開發板是精英版,POP 核心板,需要支持 WiFi 模塊,那么缺省文件就需要配置為
“config_for_android_pop_elite”。
開發板是精英版,POP 核心板,不支持 WiFi 模塊,那么缺省文件就需要配置為
“config_for_android_pop_no_wifi”。
5.4.1.3 Android4.4.4 的編譯
更新環境 javap
編譯 Android4.4.4,還缺少一個“javap”命令,使用命令:
“update-alternatives --install "/usr/bin/javap">
"/usr/lib/jvm/jdk1.6.0_43/bin/javap" 1”
更新一下,如下圖所示。
內核以及 Android 源碼路徑
編譯 Android4.4 源碼的時候,一定要注意內核源碼的目錄。在和 Android 源碼目錄
“ iTop4412_KK4.4_git ”的同一級目錄下,將內核源碼解壓。
例如,如下圖所示,作者將內核源碼和 Android4.4 源碼壓縮包放到“/home/iTOP-
4412-Android4.4”目錄下,解壓“iTop4412_KK4.4_git_xxx.tar.gz”和“iTop4412-
android4.4-kernel_xxx.tar.gz”,Android 源碼解壓之后得到“iTop4412_KK4.4_git”和
“kernel”目錄。“iTop4412_KK4.4_git”目錄下就是 Android 源碼,
“kernel/iTop4412_Kernel_3.0”目錄下就是內核源碼。
另外在編譯 Android4.4 之前,必須成功編譯 Android4.4 對應的內核。
然后進入 Android4.4.4 源碼解壓后得到文件夾“iTop4412_KK4.4_git”中,使用命令
“./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_git/out/target/product/smdk4x12”中,
生成鏡像“system.img”和“ramdisk-uboot.img”。
這里還需要注意的是,Android4.4.4 源碼需要占用較大的空間,用戶需要確認有足夠的
空間才能夠成功編譯。Android4.0.3 編譯完成后總共大約占用 18G 的空間,Android4.4.4 編
譯完成后總共占用大約 36G 的空間。
用戶完全按照步驟編譯錯誤,可以使用“df -l”查看一下盤符剩余空間還剩下多少,如果
是已使用 100%,則是空間不足。
到此,相信大家對“Android4.4源碼編譯的知識點有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。