天天看点

【永恒-南向神器】几个步骤就把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