由于项目需要,选用了一款评估板,系统都是基于openembedded/yocto构建的,这个框架的确是很方便构建和维护嵌入式系统,但初次编译时,对开发环境的要求还是很高的,否则可能一天一夜都编译不完。
编译系统镜像
准备
$ mkdir ~/bin
$ export PATH=~/bin:$PATH
$ curl https://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
注:这里的google源可以换成国内的,比如清化源
$ sudo apt install git
$ git config --global user.name "gary"
$ git config --global user.email gary@test.com
以上这些,都是为了下载toradex官方源码所用,下载后直接使用openembdeded的bitbake编译即可,具体编译过程不介绍,这些在官方使用手册上都有详细介绍,不重复,下面总结下编译这样一套系统时需要注意的地方:
注意点
1、编译SDK时,默认QT库只有很少的基本的库,所以编译前需要先配置,另外需要额外添加的库也可在编译前配置好。
2、默认方式编译出来的kernel是基于toradex当前最新的branch,比如这次编译当前最新版本是5.7.0,而我下载使用的版本是5.6.0,所以编译时一定要指定版本,否则编译出来的可能与你当前量产发布的版本不一。
3、电脑是I76代CPU(与当前11代相差几个档次)、机械硬盘,内存是8G,另外是在Virtualbox下4G内存编译,100G硬盘,所以编译时间36小时左右,
当镜像与SDK都编译好后,100G硬盘已经耗尽。建议使用10代以上CPU,固态硬盘,16G以上内存的电脑做编译,另外官方也不建议使用虚拟机之类的做编译环境。
4、openenbeddedcore编译过一次后,后续再编译是方便的,只需要编译新添加的模块就可以,编译过的模块不会再重新编译
使用OpenEmbedded/Yocto构建嵌入式系统的编译经验分享

本文介绍了基于OpenEmbedded/Yocto构建嵌入式系统的过程,强调了初次编译时对开发环境的高要求,包括推荐的硬件配置和编译环境设置。编译过程中需注意QT库的配置、内核版本的选择以及编译时间的漫长。作者还提醒,使用老旧硬件和虚拟机可能会导致编译时间过长,建议使用高性能硬件以提升效率。

被折叠的 条评论
为什么被折叠?



