[開發(fā)板]OK153-S開發(fā)板源碼編譯燒錄篇
OK153-S開發(fā)板配套的資料包為“OK153-S_Linux5.10.198_用戶資料_Alpha1”,自己編譯打包失敗,發(fā)現(xiàn)群里好些群友也反饋相關(guān)問題,最終飛凌更新了一個資料包“OK153-S_Linux5.10.198臨時資料_20260108”,里面的源碼才能編譯打包成功。
我們是在Ubuntu24.04.3操作系統(tǒng)環(huán)境下進行源碼編譯打包的,編譯打包前要安裝一些套件,下面是在Alpha1資料包過程安裝過的相關(guān)套件,安裝后,在新資料包源碼編譯是成功的,不用再安裝其他組件,下面步驟供參考:
sudo?dpkg --add-architecture i386sudo?apt updatesudo?apt install -y?\? ? libc6:i386?\? ? libc6-dev-i386?\? ? libstdc++6:i386?\? ? lib32gcc-s1?\? ? lib32stdc++6sudo?apt install -y?\? ? libc6:i386?\? ? libc6-dev-i386?\? ? lib32stdc++6?\? ? lib32ncurses6?\? ? lib32z1sudo?apt-get install lib32z1 lib32z1-dev gawk
安裝完相關(guān)套件后,就是將資料包里的源碼“OK153-S_Linux5.10.198臨時資料_20260108\2-鏡像和源碼\源碼”復(fù)制到我們的編譯服務(wù)器上(即Ubuntu24.04.3所在機器),在我們的Ubuntu24.04.3機器上對應(yīng)的源碼包情況如下:
stxinu@tsi:~/backup/OK153-S/OK153-S_Linux5.10.198臨時資料_20260108/2-鏡像和源碼/源碼$?ls -lhtotal 11G-rwxr--r--?1?stxinu stxinu?2.2K?Jan??8?20:18?'commit_id(1).txt'-rwxr--r--?1?stxinu stxinu?2.2K?Jan??8?20:15? commit_id.txt-rwxr--r--?1?stxinu stxinu?2.0G?Jan??8?20:19??OK153-linux-sdk.tar.bz2.00-rwxr--r--?1?stxinu stxinu?2.0G?Jan??8?20:17??OK153-linux-sdk.tar.bz2.01-rwxr--r--?1?stxinu stxinu?2.0G?Jan??8?20:17??OK153-linux-sdk.tar.bz2.02-rwxr--r--?1?stxinu stxinu?2.0G?Jan??8?20:17??OK153-linux-sdk.tar.bz2.03-rwxr--r--?1?stxinu stxinu?2.0G?Jan??8?20:19??OK153-linux-sdk.tar.bz2.04-rwxr--r--?1?stxinu stxinu 455M?Jan??8?20:18??OK153-linux-sdk.tar.bz2.05-rwxr--r--?1?stxinu stxinu ?366?Jan??8?20:18? sdk_md5sum.txt
通過如下命令將上面的壓縮包解壓:
cat?OKT153-linux-sdk.tar.bz2.* | tar -xjv
將解壓出來的目錄移動到我們的工作目錄下:
mv?OKT153-linux-sdk ~/backup/OK153-S/OK153-S_Linux5.10.198_20260108
然后進入對應(yīng)目錄下:
cd?~/backup/OK153-S/OK153-S_Linux5.10.198_20260108
再執(zhí)行如下命令進行配置:
./build.sh config
執(zhí)行該腳本后,對應(yīng)的配置項配置如下:
stxinu@tsi:~/backup/OK153-S/OK153-S_Linux5.10.198_20260108$ ./build.sh config01-10?19:46:06.072?3675098?D mkcommon ?: ========ACTION List: mk_config ;========01-10?19:46:06.073?3675098?D mkcommon ?: options :All?available platform:? ?0. android? ?1. linuxChoice?[linux]: 1All available linux_dev:? ?0. bsp? ?1. buildrootChoice [buildroot]: 1All available ic:? ?0. t153Choice [t153]: 0All available board:? ?0. bga_demo? ?1. bga_demo_amp_nand? ?2. bga_demo_nand? ?3. bga_demo_nor? ?4. demo? ?5. demo2_nand? ?6. demo_amp_nand? ?7. demo_nand? ?8. demo_nor? ?9. demo_qa? 10. okt153_emmc? 11. okt153_nandChoice [okt153_emmc]: 10All available flash:? ?0. default? ?1. norChoice [default]: 0All available kern_name:? ?0. linux-5.10-origin? ?1. linux-5.10-rt? ?2. linux-5.10-xenomaiChoice [linux-5.10-origin]: 0
配置完成后,再執(zhí)行如下命令進行編譯:
./build.sh
編譯過程保持網(wǎng)絡(luò)暢通,因為上面配置過程我們選擇了buildroot來構(gòu)建文件系統(tǒng),需要從網(wǎng)上下載相應(yīng)的源碼包解壓編譯生成對應(yīng)可執(zhí)行文件和SO等文件。
編譯完成后(我們的電腦配置花了一個小時左右),通過如下命令打包:
./build.sh pack
打包完成后,會相應(yīng)生成如下文件:
~/backup/OK153-S/OK153-S_Linux5.10.198_20260108/out/t153_linux_okt153_emmc_uart0.img
我們將生成的t153_linux_okt153_emmc_uart0.img文件復(fù)制到Windows系統(tǒng)里,再使用全志的PhoenixSuit工具進行燒錄,步驟如下:
有了鏡像包t153_linux_okt153_emmc_uart0.img后,我們在Windows系統(tǒng)下使用全志的PhoenixSuit工具進行燒錄,其中在“一鍵刷機”界面選擇鏡像所在路徑,有類似如下界面:
然后,做如下操作:
1、將板卡調(diào)試串口旁邊的另一個Type-C口(USB OTG口,作Device時,常用于ADB連接調(diào)試)與電腦相連;
2、將板卡斷電,按住FEL鍵后再上電,電腦識別到設(shè)備后,燒錄工具自動進行燒錄,燒錄完成后會自動重啟。
另,在Windows11下會出現(xiàn)設(shè)備驅(qū)動識別異常情況,需要關(guān)閉“核心隔離”功能里的“內(nèi)存完整性檢查”,具體可以查看微軟的如下網(wǎng)站鏈接:
https://support.microsoft.com/zh-cn/windows/無法在此設(shè)備上加載驅(qū)動程序-8eea34e5-ff4b-16ec-870d-61a4a43b3dd5
該鏈接里有如下相關(guān)說明:
燒錄完成后重啟,能在調(diào)試串口查看到我們對應(yīng)的Kernel編譯版本信息:
root@OKT153:/# cat /proc/versionLinux?version?5.10.198?(stxinu@tsi) (arm-linux-gnueabihf-gcc (GCC)?11.3.1?20220604?[releases/gcc-11 revision 591c0f4b92548e3ae2e8173f4f93984b1c7f62bb], GNU ld (Linaro_Binutils-2022.06) 2.37.20220122) #1 SMP PREEMPT Thu Jan 8 23:00:23 CST 2026
夜雨聆風(fēng)
