天天看點

【永恒-南向神器】幾個步驟就把buildroot移植到Ohos

  大家好,我是拓維資訊萌新的鴻蒙開發者-廖永恒,之前在做鴻蒙項目,研究鴻蒙特性時候,就發現ohos的系統工具很少,對南向的開發研究很是不友善,就下定決心給ohos系統增加工具。那麼有沒有一種傻瓜式的方法或軟體,它不僅包含了 busybox 的功能,而且裡面還內建了各種軟體,需要什麼軟體就選擇什麼軟體,不需要我們去移植。答案肯定是有的!buildroot 就是這樣一種工具。

  buildroot 是linux平台下的一種建構嵌入式Linux系統的架構。buildroot 不僅內建了 busybox,而且還內建了各種常見的第三方庫和軟體,需要什麼就選擇什麼,就跟我們去吃自助餐一樣,想吃什麼就拿什麼。 buildroot 極大的友善了我們嵌入式 Linux 開發人員建構實用的根檔案系統。

  上面的文字都是湊數字,現在直接寫幹貨。

一、移植環境

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)關閉mesh 與toybox工具安裝,在[ohos源碼根目錄]/third_party/mesh與toybox檔案夾下BUILD.gn裡面改install_enable 為fasle。

::: hljs-center

【永恒-南向神器】幾個步驟就把buildroot移植到Ohos

:::

::: hljs-center

【永恒-南向神器】幾個步驟就把buildroot移植到Ohos

:::

  (3)編譯buildroot

  進入[ohos源碼根目錄]/third_party/buildroot-2021.02.8

  sudo make

  因為用sudo編譯,為了防止複制檔案提示權限問題,在編譯buildroot成功後,sudo chmod -R 777 ./output/一次。

【永恒-南向神器】幾個步驟就把buildroot移植到Ohos

(4)正常編譯ohos

3568:./build.sh --product-name rk3568 --ccache

3516:./build.sh --product-name Hi3516DV300 --ccache

四、啟動後的效果

  a.自動會配置靜态網絡。

  b.使用busybox工具。

  c.sh會顯示目前路徑。

  d.原先ohos根檔案系統不受影響。

  e.自己已驗證buildroot一些工具可用。

【永恒-南向神器】幾個步驟就把buildroot移植到Ohos
【永恒-南向神器】幾個步驟就把buildroot移植到Ohos

五、buildroot 使用

  進入[ohos源碼根目錄]/third_party/buildroot-2021.02.8

  make menuconfig

【永恒-南向神器】幾個步驟就把buildroot移植到Ohos

  配置你需要的檔案

  sudo make

  開始編譯

  編譯後記得編譯一次ohos這樣才打包buildroot庫到ohos鏡像裡面。

  buildroot使用詳細教程

六、不足

  1.可能有些工具添加編譯後,還需要改某些檔案配置,視情況修改。

  2.可能有些buildroot庫檔案會與ohos庫會重名,編譯ohos時候會列印出來,到時看看哪些檔案重名了,把它放到别的庫目錄下。

  3.buildroot有些工具與ohos自帶的工具有沖突,注意甄别使用。

.......

七、期望

  目前buildroot移植到ohos裡面還存在嬰兒階段,存在不足與不完善。在這裡,歡迎大家使用基于buildroot的ohos根檔案系統,發現問題,解決問題,不斷完善功能與細節。如有bug、建議、點子,我在群裡、社群積極聽大家的回報。ღ( ´・ᴗ・` )比心,感謝!!!

想了解更多關于鴻蒙的内容,請通路:

51CTO和華為官方合作共建的鴻蒙技術社群

https://ost.51cto.com/#bkwz