基于 Linux 基金会的 Yocto 项目发布了 4.2 版本。Yocto 提供模板、工具和方法,帮助开发者创建基于 Linux 的定制版物联网 / 嵌入式操作系统,而无需关心硬件体系。
4.2 中的新功能/增强功能
- Linux 内核 6.1、glibc 2.37 和约 350 个软件升级
- Python 3.8+ 和 GCC 8.0+ 是构建主机的最低要求版本
- 此版本中的 BitBake 支持新的
addpylib
指令,以在层内启用 Python 库。有关详细信息,请参阅扩展 Python 库代码。 - BitBake 有多项内部更改,这些更改可能会提高内存和磁盘使用率以及解析时间,特别是:
- BitBake 的 Cooker 服务器现在是多线程的。
- Ctrl+C 现在可以用来中断一些以前忽略它的长时间运行的操作。
- BitBake 的缓存已扩展为包含更多哈希调试数据,但也已优化以压缩缓存数据。
- BitBake 的用户界面现在会定期对服务器执行 ping 操作,以确保它仍然存在。
-
新变量:
-
VOLATILE_TMP_DIR 允许指定是
/tmp
应该在持久存储上还是在 RAM 中。 -
SPDX_CUSTOM_ANNOTATION_VARS 允许将特定注释添加到配方的 SPDX 描述中。
-
-
防锈改进:
-
此版本在目标上添加了 Cargo 支持,并包括针对此功能的自动化 QA 测试。
-
它还支持 Rust crate 的校验和,并使它们对于配方中的每个 crate 都是强制性的。
-
新的cargo-update-recipe-crates类可以更新SRC_URI包装箱列表
Cargo.lock
-
为裸机目标启用构建 Rust
-
您现在还可以轻松地选择使用新的RUST_CHANNEL变量构建测试版或夜间版本的 Rust (使用风险自负)
-
支持SRC_URI中的本地 GitHub 存储库作为 Cargo 依赖项的替代品
-
使用内置的 Rust 目标进行
-native
构建,以节省构建 Rust 工具链的几分钟时间
-
-
特定于体系结构的增强功能:
-
此版本添加了对 LoongArch (
loongarch64
) 架构的初始支持,但尚未对其进行测试。 -
新
x86-64-v3
音频格式(AVX、AVX2、BMI1、BMI2、F16C、FMA、LZCNT、MOVBE、XSAVE) -
go:添加对在 ppc64le 上构建的支持
-
rust:rustfmt 现在可以为 riscv32 工作和安装
-
libpng:为 aarch64 启用 NEON 以确保与 arm32 的一致性。
-
baremetal-helloworld:启用 x86 和 x86-64 端口
-
-
与内核相关的增强功能:
-
添加了对构建 6.2/6.3-rc 内核的一些支持
-
linux-yocto-dev:标记为与 qemuarm64 和 qemuarmv5 兼容
-
添加内核特定的 OBJCOPY ,以帮助在 gcc 和 clang 之间干净地切换工具链
-
更多详情查看更新公告。