新闻详情

新闻详情

首页 / 资讯中心 / 详情

yocto: 04-解剖 busybox.inc

发布时间:2026/9/29 8:17:30来源:尧图网络
yocto: 04-解剖 busybox.inc
摘要本文以busybox_1.36.1.bb为例系统解析 Yocto 项目中 recipe 文件的结构与工作机制。首先揭示.bb文件与.inc文件的分离设计.bb作为“版本层”仅包含版本特定配置而通用构建逻辑封装在.inc文件中通过require指令引入。接着深入讲解SRC_URI变量的作用与组成包括远程源码下载https://和本地补丁文件引用file://两种方式并解释${PV}等 BitBake 变量的解析过程。最后通过目录结构示例说明 recipe 文件与辅助文件的组织关系帮助读者建立对 Yocto/BitBake 构建系统文件组织方式的完整认知。很好。现在我们正式开始解剖 busybox_1.36.1.bb。先不要急着看后面的 200 多行。你贴出来的这一段其实已经能让我们建立一个非常重要的认识这个 .bb 文件本身并不完整。它只是 BusyBox recipe 的“版本层”。真正大量的通用逻辑在 busybox.inc 里。1. 第一行require busybox.increquire busybox.inc这是我们首先必须搞懂的。它相当于busybox_1.36.1.bb │ │ require ▼ busybox.inc可以把它暂时理解成把 busybox.inc 的内容纳入当前 recipe。所以你现在看到的busybox_1.36.1.bb实际上不是完整 recipe。它更像busybox.inc ↓ 通用 BusyBox 构建逻辑 busybox_1.36.1.bb ↓1.36.1 这个版本特有的源码、patch、配置这就是 Yocto 非常常见的组织方式2. 为什么要拆成 .inc .bb假设以后 BusyBox 有busybox_1.35.0.bb busybox_1.36.1.bb busybox_1.37.0.bb很多东西其实完全一样do_configure do_compile do_install PACKAGES FILES RDEPENDS...那么没必要每个 .bb 都重复写。于是这就是 .inc 的价值。3. 第二个核心SRC_URI接下来SRC_URIhttps://busybox.net/downloads/busybox-${PV}.tar.bz2;nametarball \ file://0001-depmod-Ignore-.debug-directories.patch \ file://busybox-udhcpc-no_deconfig.patch \ ... 这个变量极其重要。你可以先把它理解成告诉 BitBake“构建这个 recipe我需要哪些输入文件”这里有两类东西。3.1 第一类真正的 BusyBox 源码https://busybox.net/downloads/busybox这里的${PV}又是一个 BitBake 变量。对于busybox_1.36.1.bbBitBake 会得到PNbusybox PV1.36.1所以busybox-${PV}.tar.bz2最终就是busybox-1.36.1.tar.bz2也就是说busybox_1.36.1.bb ├── PNbusybox └── PV1.36.1 ▼ busybox-1.36.1.tar.bz2这就是我们前面从 recipe 文件名看到的busybox_1.36.1.bb ↑ PV4. file:// 又是什么意思比如file://busybox-udhcpc-no_deconfig.patch它不是从互联网下载。file:// 表示从 Yocto 的 recipe 文件搜索路径中找这个文件。所以你会在 BusyBox recipe 目录附近看到大量busybox/ ├── busybox_1.36.1.bb ├── busybox.inc ├── busybox-udhcpc-no_deconfig.patch ├── defconfig ├── mdev ├── mdev.conf ├── syslog.conf ├──...这就是为什么一个 .bb 文件旁边会有这么多辅助文件。5. 所以 SRC_URI 是什么我们可以画成
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

DDoS防御实战:黑白名单、限速与流量牵引的组合策略 2026/9/29 11:21:51

DDoS防御实战:黑白名单、限速与流量牵引的组合策略

做安全运维这些年,DDoS 防御是我见过最没有捷径可走的方向。很多人以为买了高防 IP 就万事大吉,结果真被打瘫了才发现,真正能扛住攻击的,往往不是那套昂贵的防护套餐,而是你在防火墙、路由器和后端服务器上提前配好的黑…

阅读更多 →
如何配置SSH服务监听多个端口? 2026/9/29 11:21:51

如何配置SSH服务监听多个端口?

一、SSH服务监听多个端口的背景与需求在企业网络或云环境中,出于安全策略、网络隔离或运维管理的需要,常常要求SSH服务监听多个端口。例如:防火墙仅允许特定端口通过,如443端口区分不同用户组或用途的SSH连接避免与标准端口冲突&a…

阅读更多 →
卫星互联网安全实战:Starlink用户链路IP欺骗防御与流量分析 2026/9/29 11:21:51

卫星互联网安全实战:Starlink用户链路IP欺骗防御与流量分析

简介:这份PDF面向网络安全学习者与CTF-Misc方向选手,聚焦卫星互联网场景下的IP欺骗防御问题,以Starlink用户链路流量为切入点,系统梳理从威胁建模到检测落地的完整知识链路。内容涵盖卫星网络架构与通信原理、链路流量特征提取与异…

阅读更多 →
Hadoop的详细讲解 2026/9/29 11:21:45

Hadoop的详细讲解

一、Hadoop的核心架构总览 摘要:Hadoop由HDFS、YARN、MapReduce三大组件构成:HDFS实现分布式存储,通过主从架构管理海量数据块并保障可靠性;YARN负责资源调度,支持多框架共存;MapReduce基于“分而治之”模型,通过Map与Reduce阶段完成并行计算。三者协同工作,实现从数据…

阅读更多 →
从Pentbox到Cowrie:三种蜜罐部署实战指南 2026/9/29 11:21:45

从Pentbox到Cowrie:三种蜜罐部署实战指南

简介:三种蜜罐的搭建与使用,围绕防护与诱捕这一安全主题,面向安全测试入门者、网络运维人员以及高校相关专业学生。文档借助Defnet、Pentbox、Cowrie三种工具,系统演示Windows与Kali Linux环境下的蜜罐部署,涵盖端口开…

阅读更多 →
模型优化实战:剪枝、量化、蒸馏与推理引擎集成指南 2026/9/29 11:21:38

模型优化实战:剪枝、量化、蒸馏与推理引擎集成指南

部署过模型的朋友应该都有这种感觉:模型在训练服务器上跑得挺漂亮,指标一出来马上就能刷榜,可一旦要挪到生产环境,延迟、显存、吞吐量全都不对劲,甚至直接因为资源限制根本塞不进去。这时候真正决定项目能不能上线的&a…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉