只需幾個步驟就把Buildroot移植到Ohos
??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??
??https://harmonyos.51cto.com??
大家好,我是拓維信息萌新的鴻蒙開發(fā)者-廖永恒,之前在做鴻蒙項(xiàng)目,研究鴻蒙特性時候,就發(fā)現(xiàn)ohos的系統(tǒng)工具很少,對南向的開發(fā)研究很是不方便,就下定決心給ohos系統(tǒng)增加工具。那么有沒有一種傻瓜式的方法或軟件,它不僅包含了 busybox 的功能,而且里面還集成了各種軟件,需要什么軟件就選擇什么軟件,不需要我們?nèi)ヒ浦病4鸢缚隙ㄊ怯械?buildroot 就是這樣一種工具。
buildroot 是linux平臺下的一種構(gòu)建嵌入式Linux系統(tǒng)的框架。buildroot 不僅集成了 busybox,而且還集成了各種常見的第三方庫和軟件,需要什么就選擇什么,就跟我們?nèi)コ宰灾鸵粯樱氤允裁淳湍檬裁础?buildroot 極大的方便了我們嵌入式 Linux 開發(fā)人員構(gòu)建實(shí)用的根文件系統(tǒng)。
上面的文字都是湊數(shù)字,現(xiàn)在直接寫干貨。
一、移植環(huán)境
1.buildroot版本:buildroot-2021.02.8
2.openharmony版本:openharmony3.1 Beta
3.L2級別
二、移植文件下載
??文件下載鏈接??
三、移植步驟
(1)在gitee把文件mkimages.py、dac.txt下載下來,替換掉[ohos源碼根目錄]/build/ohos/images/mkimage/的mkimages.py、dac.txt。把文件夾buildroot-2021.02.8下載下來,放在[ohos源碼根目錄]/third_party/下。
(2)關(guān)閉mesh 與toybox工具安裝,在[ohos源碼根目錄]/third_party/mesh與toybox文件夾下BUILD.gn里面改install_enable 為fasle。
(3)編譯buildroot
進(jìn)入[ohos源碼根目錄]/third_party/buildroot-2021.02.8
sudo make
因?yàn)橛胹udo編譯,為了防止復(fù)制文件提示權(quán)限問題,在編譯buildroot成功后,sudo chmod -R 777 ./output/一次。
(4)正常編譯ohos
3568:./build.sh --product-name rk3568 --ccache
3516:./build.sh --product-name Hi3516DV300 --ccache
四、啟動后的效果
a.自動會配置靜態(tài)網(wǎng)絡(luò)。
b.使用busybox工具。
c.sh會顯示當(dāng)前路徑。
d.原先ohos根文件系統(tǒng)不受影響。
e.自己已驗(yàn)證buildroot一些工具可用。
五、buildroot 使用
進(jìn)入[ohos源碼根目錄]/third_party/buildroot-2021.02.8
make menuconfig
- 配置你需要的文件
- sudo make
- 開始編譯
- 編譯后記得編譯一次ohos這樣才打包buildroot庫到ohos鏡像里面。
- ??buildroot使用詳細(xì)教程??
六、不足
1.可能有些工具添加編譯后,還需要改某些文件配置,視情況修改。
2.可能有些buildroot庫文件會與ohos庫會重名,編譯ohos時候會打印出來,到時看看哪些文件重名了,把它放到別的庫目錄下。
3.buildroot有些工具與ohos自帶的工具有沖突,注意甄別使用。
七、期望
目前buildroot移植到ohos里面還存在嬰兒階段,存在不足與不完善。
??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??
??https://harmonyos.51cto.com??