我想为 x86_64 和 aarch64 构建 Yocto SDK,如果可能的话,使用一台 Linux 计算机。
我使用
bitbake <image> -c populate_sdk
为我的系统架构(x86_64)构建了一个标准 Yocto SDK,并且效果很好。我想在容器中运行 SDK(例如 https://github.com/crops/extsdk-container/),并且我希望它能够在基于 ARM 的 Mac 上为其他开发人员工作。
显然,x86_64 SDK 安装程序不会在基于 Arm 的 Mac 上的标准容器中运行,因为容器架构与安装程序不匹配。
在执行 populate_sdk 时,我找不到任何指定不同架构的选项。看起来我必须在我的 M1 Mac 上获得完整的 yocto 设置并从那里构建 SDK,然后必须维护两个 SDK 安装程序,这并不理想。
有人知道该怎么做吗?
如果我必须在 QEMU 或其他东西下运行容器,我想我不想继续走这条路......
我能够通过更新位于
/oe-core/meta/conf/bitbake.conf
的 bitbake 配置来为我的目标机器构建 aarch64 SDK 安装程序
有一个硬编码行
SDKMACHINE ??= "x86_64"
,我所要做的就是将其更改为 SDKMACHINE ??= "aarch64"
并重新运行 SDK 构建。
但不确定这是否适用于所有目标机器。