深入探索 Yocto:嵌入式 Linux 构建系统的奥秘
1. 技术要求
在开始之前,确保你具备以下条件:
- 基于 Linux 的系统主机,至少有 60GB 的可用磁盘空间。
- Yocto 3.1(Dunfell)LTS 版本。如果你还未构建该版本,请参考 Yocto 项目快速构建指南 中的兼容 Linux 发行版和构建主机软件包部分,然后按照相关说明在 Linux 主机上构建 Yocto。
2. 剖析 Yocto 的架构和工作流程
Yocto 是一个复杂的构建系统,理解它的第一步是剖析其架构。Yocto 的工作流程源自 OpenEmbedded 项目,源材料以 BitBake 配方的元数据形式作为输入进入系统。构建系统利用这些元数据来获取、配置和编译源代码,生成二进制包提要。这些输出包在暂存区组装后,生成完整的 Linux 映像和 SDK,并附带包含每个包许可证的清单。
Yocto 构建系统工作流程的七个步骤如下:
1. 定义策略、机器和软件元数据的层。
2. 从软件项目的源 URI 获取源文件。
3. 提取源代码,应用补丁并编译软件。
4. 将构建工件安装到暂存区以进行打包。
5. 将安装的构建工件捆绑到根文件系统的包提要中。
6. 在提交二进制包提要之前运行 QA 检查。
7. 并行生成最终的 Linux 映像和 SDK。