尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

yocto: 04-解剖 busybox.inc

发布时间:2026/9/29 8:17:35

资讯中心
01
ARTICLE

yocto: 04-解剖 busybox.inc

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 是什么我们可以画成
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。