当前位置:网站首页>MYS-6ULX-IOT 开发板测评——使用 Yocto 添加软件包
MYS-6ULX-IOT 开发板测评——使用 Yocto 添加软件包
2022-08-04 23:04:00 【51CTO】
我们除了对 Yocto Project 中现有的软件系统进行修改定制外,还可以将更多的软件包添加到我们的 Yocto Project 环境中,这样可以直接将这些软件包打包进目标平台的系统镜像中,而不需要后续安装。
##示例:添加 curl
下面我以添加 curl 为例进行操作:
**(1)**首先,我们先看看 MYiR 有没有提供 curl 软件包。查看 downloads 目录,发现其中已经包含 curl-7.47.1.tar.bz2。
**(2)**但是 core-image-base 的配方中并没有包含 curl,所以我们要添加进去。打开 sources/meta-myir-imx6ulx/recipes-core/images/core-image-base.bbappend,在末尾添加一行: IMAGE_INSTALL += "curl" 。
**(3)**重新构建系统镜像,执行 bitbake core-image-base。
**(4)**更新系统,检查是否包含 curl。
##查找更多软件包
那么,问题来了!如果我们不是使用 MYS-6ULX-IOT 开发板,我们怎么知道 Yocto Project 包含哪些第三方软件包呢?修改配方文件时又应该使用什么名字呢?
其实,我们可以通过 http://packages.yoctoproject.org 来查询相应的软件包,比如我们在搜索栏输入“curl”。
如果觉得上述列表中的软件包还不够丰富,我们也可以采用由 Open Embedded 项目所提供的额外的软件包。为了使用这个系列的软件包,首先需要我们下载它对应的 Yocto Layer 到当前目录。
上述操作会在 sources 目录创建出 meta-openembedded 目录,其中包含了对额外软件包的描述。不过此时 Yocto Project 系统并不能自动识别出这些软件包的存在,为此,我们需要修改 build-myir/conf/bblayers.conf 配置文件,通知 Yocto Project 有新的软件包集合加入。
将 OpenEmbedded 提供的软件包加入到当前 Yocto Project 环境中:
其实 MYiR 已经帮我们添加好了 Open Embedded 项目,所以如果使用 MYS-6ULX-IOT 平台的话,我们并不需要再配置。
在 OpenEmbedded 中包含了大量的软件包,比如 OpenCV 库。如果我们希望编译产生的 MYS-6ULX-IOT 系统中就已经集成了 OpenCV,只需要按照前面加入 curl 软件包的做法那样,修改 core-image-base.bbappend 文件,对应地增加 OpenCV 即可。
##可视化配置工具
上述直接修改配置文件的方式对于初学者来说可能难以接受,因此 Yocto Project 为我们提供了图形化配置工具。
原来的图形化配置工具是 Hob,但是现在 hob 已经不再支持了。取而代之的是 Toaster,toaster 是一个基于 web 架构的可视化配置工具,如果你对如何使用 toaster 来配置、构建 Linux 系统镜像,那么你应该还好看看《 Toaster User Manual》。
边栏推荐
- Using ngrok to optimize web pages on raspberry pi (2)
- 智慧养老整体解决方案
- JVM memory configuration parameter GC log
- 【内存操作函数内功修炼】memcpy + memmove + memcmp + memset(四)
- Nacos配置中心之客户端长轮询
- If you can't get your heart, use "distributed lock" to lock your people
- 线性DP(下)
- 【游戏建模模型制作全流程】在ZBrush中雕刻恶魔城男性角色模型
- BUG | The interface returns abnormal data
- Qt中的常用控件
猜你喜欢

360市值四年蒸发3900亿,政企安全能救命吗?

App测试和Web测试的区别

一点点读懂Thremal(二)

【3D建模制作技巧分享】ZBrush如何重新拓扑

3年,从3K涨薪到20k?真是麻雀啄了牛屁股 — 雀食牛逼呀

被领导拒绝涨薪申请,跳槽后怒涨9.5K,这是我的心路历程

Community Sharing|Tencent Overseas Games builds game security operation capabilities based on JumpServer

Pytest学习-Fixture
![[Mock Interview - 10 Years of Work] Are more projects an advantage?](/img/fa/2652629d1ff4653aca0d626ac89bf8.jpg)
[Mock Interview - 10 Years of Work] Are more projects an advantage?

【字符串函数内功修炼】strncpy + strncat + strncmp(二)
随机推荐
DREAMWEAVER8 part of the problem solution
MySQL的安装与卸载
【项目实战】仿照Room实现简单管理系统
今天又做了三个梦,其中一个梦梦里的我还有意识会思考?
质量管理大师爱德华·戴明博士经典的质量管理14条原则
enumerate()函数
panic: reflect: reflect.Value.SetString using value obtained using unexported field
为何越来越多人选择进入软件测试行业?深度剖析软件测试的优势...
typeScript-promise
【3D建模制作技巧分享】ZBrush如何重新拓扑
3年,从3K涨薪到20k?真是麻雀啄了牛屁股 — 雀食牛逼呀
亿流量大考(3):不加机器,如何抗住每天百亿级高并发流量?
2022年全网最全接口自动化测试框架搭建,没有之一
go语言的time包介绍
Redis understanding
2022/8/3
软件测试技术之如何编写测试用例(4)
web3.js
SQL Server calls WebService
PID Controller Improvement Notes No. 7: Improve the anti-overshoot setting of the PID controller