openembedded-core编译注意事项

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

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于项目需要,选用了一款评估板,系统都是基于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编译过一次后,后续再编译是方便的,只需要编译新添加的模块就可以,编译过的模块不会再重新编译

paho.mqtt.embedded-c是一个用于开发嵌入式设备的MQTT C语言库。交叉编译是指在一台开发机上编译运行不同架构的目标设备上的程序。对于paho.mqtt.embedded-c的交叉编译,我们可以按照以下步骤进行: 1. 下载交叉编译工具链:根据目标设备的架构,从相应的厂商或开源社区下载对应的交叉编译工具链。这个工具链包含了可以在开发机上编译和调试目标设备上的程序所需的编译器、链接器和库文件。 2. 配置交叉编译环境:将下载的交叉编译工具链添加到开发机的环境变量中,以便可以在命令行终端中访问到这些工具。在Linux系统中,可以通过修改.bashrc或者.profile文件来添加环境变量。在Windows系统中,可以在系统设置中进行相应配置。 3. 下载paho.mqtt.embedded-c源代码:从paho.mqtt.embedded-c的官方仓库或者其他可信的源代码库中下载最新的版本。 4. 配置交叉编译参数:进入paho.mqtt.embedded-c源代码所在的目录,并按照目标设备的架构和交叉编译工具链的要求,配置交叉编译参数。这包括编译器路径、库文件路径、目标设备架构等。 5. 执行交叉编译命令:在命令行终端中执行交叉编译命令,将paho.mqtt.embedded-c源代码编译为目标设备可执行的二进制文件。这个命令通常使用交叉编译工具链提供的编译器和链接器,同时会指定一些编译选项,如优化级别、生成的目标文件名等。 6. 导出二进制文件:编译成功后,将生成的二进制文件导出到目标设备中,可以通过网络或者其他传输方式将其复制到目标设备的文件系统中。 通过以上步骤,我们可以将paho.mqtt.embedded-c库交叉编译为可以在目标设备上运行的程序。这样,我们就可以在嵌入式设备中使用MQTT协议进行通信了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JXES智能生态系统

如文章对你有用,请作者喝个咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值