国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

嵌入式學(xué)習(xí)篇丨迅為4412開發(fā)板Android4.4系統(tǒng)編譯

發(fā)布時(shí)間:2021-8-4 10:16    發(fā)布者:落風(fēng)
Android4.4.4 的內(nèi)核以及文件系統(tǒng)的源碼在網(wǎng)盤“iTOP4412 開發(fā)板資料匯總(不含光盤內(nèi)容)\iTOP-4412開發(fā)板系統(tǒng)源碼及鏡像(其他)\android_4.4.4 源碼以及對(duì)應(yīng) Kernel 源碼”目錄下。

需要注意的是,其中“20170803”以及后續(xù)新增的目錄下的源碼編譯方法參考本小節(jié),在“20170803”之前的源碼編譯參考 7.4.2 小節(jié)。
另外,由于 eMMC 升級(jí)和屏幕升級(jí),如果用戶是 2018 年或者之后購買的開發(fā)板,或者新購買了金屬框 7 寸屏/10.1 寸屏,請(qǐng)直接下載“2018xxx”目錄下上傳的內(nèi)核代碼和鏡像測(cè)試,Android 源碼和 20170803通用,編譯方法參考 7.4.1 小節(jié)。

8.1 搭建編譯環(huán)境
編譯安卓 4.4 使用 Ubuntu12.04,配置方法和 Android4.0 相同。編譯 uboot 和內(nèi)核使用的編譯器和 編譯Android4.0.3 的內(nèi)核編譯器一模一樣(使用 arm2009-q3)。編譯 Android4.4 文件系統(tǒng)相關(guān)的配置方法參考9.4 章節(jié)

8.2 編譯 U-boot
Android4.4.4 對(duì)應(yīng) uboot 的源碼,編譯器,參數(shù)配置,編譯腳本以及編譯參數(shù)和 Android4.0.3 的 uboot全部一模一樣,可參考“8.3 編譯 U-boot”章節(jié)。

8.3 編譯 Linux 內(nèi)核
Android4.4 對(duì)應(yīng)的 Linux 內(nèi)核在網(wǎng)盤“iTOP4412 開發(fā)板資料匯總(不含光盤內(nèi)容)\iTOP-4412 開發(fā)板系統(tǒng)源碼及鏡像(其他)\android_4.4.4 源碼及鏡像\xxxx\Android4.4-Source”目錄下,在最新日期的文件夾下的“iTop4412- android4.4-kernel_xxxx.tar.gz”壓縮包,xxxx 表示日期。
內(nèi)核的編譯器和 Android4.0.3 的內(nèi)核編譯器一模一樣(arm-2009q3)。
內(nèi)核的編譯需要對(duì)應(yīng)的配置文件,基本的配置文件名是“config_for_android_XX_YY”,XX,YY 表示用下表所示的參數(shù)替代。POP 和 SCP 分別對(duì)應(yīng)核心板的 POP 和 SCP;elite 和 super 分別對(duì)應(yīng)精英版和全能版;no_wifi 參數(shù)僅用于精英版,表示不支持 WiFi 模塊,如果沒有 WiFI 模塊,那么就需要配置為 no_wifi。

如上表所示,如果需要 Android4.4.4 支持 WiFi,則需要配置對(duì)應(yīng)的參數(shù),不支持 WiFi 也需要進(jìn)行對(duì)應(yīng)配置。

編譯生成內(nèi)核鏡像舉例
和 Android4.0.3 內(nèi)核一樣,如果需要編譯對(duì)應(yīng)核心板的內(nèi)核,首先使用 cp 命令將對(duì)應(yīng)的配置文件覆蓋掉“.config”。
如果用戶要使用 5 寸屏幕,先要參考用戶手冊(cè)“7.6 支持 5 寸屏的內(nèi)核補(bǔ)丁文件”,給內(nèi)核打補(bǔ)丁,然 后 使 用 命 令 “ vim .config ” , 在 文 件 中 搜 索 關(guān) 鍵 詞 “ CONFIG_TOUCHSCREEN_GT9XX=y ” , 在
“CONFIG_TOUCHSCREEN_GT9XX=y”之后添加一行“CONFIG_TOPEET_LCD5X0=y”,添加完成之后,如下圖所示。如果用戶不使用 5 寸屏幕,則可以跳過這一步。

最后執(zhí)行編譯命令“make zImage”。
生成內(nèi)核鏡像的目錄也是“arch\arm\boot”。
例如:開發(fā)板是精英版,POP 核心板,需要支持 WiFi 模塊,那么缺省文件就需要配置為“config_for_android_pop_elite”。
開 發(fā) 板 是 精 英 版 , POP 核 心 板 , 不 支 持 WiFi 模 塊 , 那 么 缺 省 文 件 就 需 要 配 置 為“config_for_android_pop_no_wifi”。

8.4 編譯 Android4.4.4 文件系統(tǒng)
編譯 Android4.4.4,還缺少一個(gè)“javap”命令,使用命令:
update-alternatives --install "/usr/bin/javap" "javap" "/usr/lib/jvm/jdk1.6.0_43/bin/javap" 1更新一下,如下圖所示。

編 譯 Android4.4 源 碼 的 時(shí) 候 , 一 定 要 注 意 內(nèi) 核 源 碼 的 目 錄 。 在 和 Android 源 碼 目 錄“iTop4412_KK4.4_git ”的同一級(jí)目錄下,將內(nèi)核源碼解壓。
例如,如下圖所示,作者將內(nèi)核源碼和 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”目錄下就是內(nèi)核源碼。

另外在編譯 Android4.4 之前,必須成功編譯 Android4.4 對(duì)應(yīng)的內(nèi)核。
然后進(jìn)入 Android4.4.4 源碼解壓后得到文件夾“iTop4412_KK4.4_git”中,使用命令“./build_android.sh”運(yùn)行一鍵編譯腳本,開始編譯 Android4.4.4。
注意:編譯 Android4.4.4 必須保證給 Ubuntu 系統(tǒng)提供 3G 以上內(nèi)存。這里“提供 3G 以上內(nèi)存”的意思,不僅僅是指在 VMware Workstations 虛擬機(jī)中設(shè)置分配 3G 內(nèi)存。例如,用戶在編譯的時(shí)候,PC 機(jī)的內(nèi)存一共是 4G,在虛擬機(jī)中設(shè)置分配 3G 內(nèi)存,但是在 Windows 系統(tǒng)下,開著 QQ,殺毒軟件,音樂播放器,瀏覽器等等,這樣在 Windows 下占用的內(nèi)存就快 2G 了,那么虛擬機(jī)會(huì)自動(dòng)調(diào)整到只占用 2G,甚至不到 2G 的內(nèi)存,這樣是沒法編譯通過的。
正確的分配內(nèi)存方法是,首先給虛擬機(jī)分配 3G 以上內(nèi)存,然后在 Windows 下關(guān)掉盡量多的不必要的應(yīng)用,關(guān)掉盡量多應(yīng)用的后臺(tái)程序。
當(dāng)然,如果用戶的 PC 是 8G 或者 16G 內(nèi)存,隨意就成。
編譯完成之后,在文件夾“iTop4412_KK4.4_git/out/target/product/smdk4x12”中,生成鏡像“system.img”和“ramdisk-uboot.img”。
這里還需要注意的是,Android4.4.4 源碼需要占用較大的空間,用戶需要確認(rèn)有足夠的空間才能夠成功編譯。Android4.0.3 編譯完成后總共大約占用 18G 的空間,Android4.4.4 編譯完成后總共占用大約 36G 的空間。
用戶完全按照步驟編譯錯(cuò)誤,可以使用“df -l”查看一下盤符剩余空間還剩下多少,如果是已使用 100%,則是空間不足。

8.5 編譯早期 Android4.4.4 舊源碼
注意:本小節(jié),介紹的舊源碼指的是“20170803”之前的早期源碼。
在網(wǎng)盤目錄中“iTOP4412 開發(fā)板資料匯總(不含光盤內(nèi)容)\iTOP-4412 開發(fā)板系統(tǒng)源碼及鏡像(其他)\android_4.4.4 源碼以及對(duì)應(yīng) Kernel 源碼”中下載 Android4.4.4 的 文件系統(tǒng),并通過 github 下載 uboot
(Android4.4 的 uboot 源碼和 Android4.0.3 完全一樣) 和 kernel 的源碼(參考附錄六)。

編譯 uboot
Android4.4.4 對(duì)應(yīng) uboot 的源碼,編譯器,參數(shù)配置,編譯腳本以及編譯參數(shù)和 Android4.0.3 的 uboot全部一模一樣。

編譯 Linux 內(nèi)核
網(wǎng)盤下載 Android4.4.4 對(duì)應(yīng)的源碼。在網(wǎng)盤“iTOP4412 開發(fā)板資料匯總(不含光盤內(nèi)容)\iTOP-4412 開發(fā)板系統(tǒng)源碼及鏡像(其他)\android_4.4.4 源碼及鏡像”目錄下。
Android4.4.4 對(duì)應(yīng)內(nèi)核的編譯器和 Android4.0.3 的內(nèi)核編譯器一模一樣。內(nèi)核的編譯是組合式配置文件,基本的配置文件名是“config_for_android_YY”,YY 表示用下表所示的參數(shù)替代。

如上表所示,如果需要 Android4.4.4 支持 WiFi,則需要配置對(duì)應(yīng)的參數(shù)。
編譯生成內(nèi)核鏡像舉例:
和 Android4.0.3 內(nèi)核一樣,如果需要編譯對(duì)應(yīng)核心板的內(nèi)核,首先使用 cp 命令將對(duì)應(yīng)的配置文件覆蓋掉”.config”,然后在執(zhí)行編譯命令“make zImage”。生成內(nèi)核鏡像的目錄也是“arch”-->“arm”-->“boot”。

編譯 Android4.4.4 (文件系統(tǒng)部分)
Android4.4.4 源碼在網(wǎng)盤“iTOP-4412 開發(fā)板系統(tǒng)源碼及鏡像(其他)\android_4.4.4 源碼以及對(duì)應(yīng)
Kernel 源碼”目錄中下載,編譯器和參數(shù)配置和 Android4.0.3 一模一樣。
更新環(huán)境 javap
編譯 Android4.4.4,還缺少一個(gè)“javap”命令,使用命令:“update-alternatives --install "/usr/bin/javap" "javap" "/usr/lib/jvm/jdk1.6.0_43/bin/javap" 1”更新一下,如下圖所示。


源碼下載
內(nèi)核的源碼也可以在 github 上下載,具體參考使用手冊(cè)附錄 6.2,附錄中有迅為 Android4.4 對(duì)應(yīng)內(nèi)核源碼 github 下載地址。
使用手冊(cè)附錄中有介紹 repo 下載 Android4.4.4 源碼的方法,但是從 2016 開始,repo 經(jīng)常性的無法下載和使用。所以最好到迅為百度網(wǎng)盤中下載源碼(目錄參考使用手冊(cè)編譯章節(jié)),選取日期最近的目錄下載即可。
網(wǎng)盤中源碼包一般是 gz 后綴、7z 或者 rar 后綴。gz 后綴可以直接在 Ubuntu 下解壓; 7z 和 rar 后綴都是需要先在 windows 下解壓出 gz 后綴壓縮包,然后再在 Ubuntu 下解壓。
內(nèi)核以及 Android 源碼路徑
編 譯 Android4.4.4 源 碼 的 時(shí) 候 , 一 定 要 注 意 內(nèi) 核 源 碼 的 目 錄 。 在 和 Android 源 碼 目 錄“iTop4412_KK4.4_git”的同一級(jí)目錄下,新建一個(gè) kernel 目錄,然后將內(nèi)核源碼放到 kernel 目錄下,要使用迅為默認(rèn)的文件名“iTop4412_Kernel_3.0”。
例如:在 Android4.4 的源碼目錄下,使用命令“l(fā)s ../kernel/iTop4412_Kernel_3.0/”,如下圖所示,內(nèi)核的目錄才是正確的。

另外在編譯 Android4.4 之前,必須成功編譯 Android4.4 對(duì)應(yīng)的內(nèi)核。
然后進(jìn)入 Android4.4.4 源碼解壓后得到文件夾“iTop4412_KK4.4”中,使用命令“./build_android.sh”運(yùn)行一鍵編譯腳本,開始編譯 Android4.4.4。注意:編譯 Android4.4.4 必須保證給 Ubuntu 系統(tǒng)提供 3G 以上內(nèi)存。這里“提供 3G 以上內(nèi)存”的意思,不僅僅是指在 VMware Workstations 虛擬機(jī)中設(shè)置分配 3G 內(nèi)存。例如,用戶在編譯的時(shí)候,PC 機(jī)的內(nèi)存一共是 4G,在虛擬機(jī)中設(shè)置分配 3G 內(nèi)存,但是在 Windows系統(tǒng)下,開著 QQ,殺毒軟件,音樂播放器,瀏覽器等等,這樣在 Windows 下占用的內(nèi)存就快 2G 了, 那么虛擬機(jī)會(huì)自動(dòng)調(diào)整到只占用 2G,甚至不到 2G 的內(nèi)存,這樣是沒法編譯通過的。正確的分配內(nèi)存方法是,首先給虛擬機(jī)分配 3G 以上內(nèi)存,然后在 Windows 下關(guān)掉盡量多的不必要的應(yīng)用,關(guān)掉盡量多應(yīng)用的后臺(tái)程序。
當(dāng)然,如果用戶的 PC 是 8G 或者 16G 內(nèi)存,隨意就成。

如下圖所示,編譯完成。在文件夾“iTop4412_KK4.4/out/target/product/smdk4x12”中,生成鏡像
“system.img”和“ramdisk-uboot.img”。

這里還需要注意的是,Android4.4.4 源碼需要占用較大的空間,用戶需要確認(rèn)有足夠的空間才能夠成功編譯。Android4.0.3 編譯完成后總共大約占用 18G 的空間,Android4.4.4 編譯完成后總共占用大約 36G 的空間,如下圖。

用戶完全按照步驟編譯錯(cuò)誤,可以使用“df -l”查看一下盤符剩余空間還剩下多少,如下圖所示,如果是已使用 100%,則是空間不足。

內(nèi)核源碼包是“iTop4412-android4.4-kernel_20180724.tar.gz”,一定要是 20180724 結(jié)尾的內(nèi)核壓縮包才行,如果用戶使用的是老版本,則需要根據(jù)補(bǔ)丁文件添加代碼。
補(bǔ)丁包是網(wǎng)盤“iTOP4412 開發(fā)板資料匯總(不含光盤內(nèi)容)\iTOP-4412 開發(fā)板系統(tǒng)源碼及鏡像(其他)\android_4.4.4 源 碼 以 及 對(duì) 應(yīng) Kernel 源 碼 \20180724\Android4.4-Source ” 目 錄 下 的 壓 縮 包“patch_elite4x4_lcd5x0.tar.gz”。
拷貝到內(nèi)核源碼目錄下(一定要拷貝到內(nèi)核源碼的目錄下),如下圖所示,使用命令“tar -vxfpatch_elite4x4_lcd5x0.tar.gz”解壓得到文件夾“patch_elite4x4_lcd5x0”,文件夾中有 5 個(gè)補(bǔ)丁文件,1 個(gè)腳本文件。

進(jìn)入解壓得到的文件夾“patch_elite4x4_lcd5x0”,使用命令“ chmod 777 script_patch_elite4x4_lcd5.sh”修改腳本權(quán)限。
接著使用“./script_patch_elite4x4_lcd5.sh u”命令,到這一步就打完補(bǔ)丁了,如下圖所示。

如果需要返回到更新補(bǔ)丁前的狀態(tài),則使用命令“./script_patch_elite4x4_lcd5.sh r”。
用 戶 在 “ iTop4412-android4.4-kernel_20180724.tar.gz ” 原 始 內(nèi) 核 的 基 礎(chǔ) 上 , 運(yùn) 行 了“./script_patch_elite4x4_lcd5.sh u”N 次,則可以使用命令“./script_patch_elite4x4_lcd5.sh r”同樣也是 N 次,則可以返回到打補(bǔ)丁前的狀態(tài)。
更多內(nèi)容:?jiǎn)袅▎袅ā阉鞅本┭笧?br />
本文地址:http://m.qingdxww.cn/thread-771673-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 利用SAM E54 Xplained Pro評(píng)估工具包演示CAN轉(zhuǎn)USB橋接器以及基于CAN的主機(jī)和自舉程序應(yīng)用程序
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開發(fā)培訓(xùn)教程
  • 集成高級(jí)模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一区视频在线 | 国产一级高清视频免费看 | 国产精品一区二区三区久久 | 日本一区免费观看 | a级片免费在线播放 | 美女视频在线观看免费网 | 狠狠色丁香久久综合五月 | 天天五月天丁香婷婷深爱综合 | 五月天啪啪 | 色综合天天色综合 | 国产精品999 | 黄色片视频免费观看 | 国产成人aaa在线视频免费观看 | 2019精品国产品免费观看 | 中文字幕日韩wm二在线看 | 18到20岁女人一级毛片 | 免费国产一级特黄久久 | eeuss影院【www...】 | 久久er国产精品免费观看1 | 久久久精品视频免费观看 | 农村寡妇偷毛片一级 | 91污网站 | 在线视频日韩欧美 | 免费日韩 | 久久伊人操 | 亚洲精品国产三级在线观看 | 日韩在线视频不卡 | 美国毛片免费观看 | 成人免费黄色片 | 综合自拍| 中文字字幕在线一本通 | 中文字幕专区高清在线观看 | 久久久噜噜噜久久老司机 | 日韩欧美在线中文字幕 | 久久国产三级 | 成人精品免费网站 | 性视频福利在线看 | 激情在线视频 | 免费看亚洲 | 尹人香蕉网在线观看视频 | 日本不卡在线视频 |