用于运行测试用例等。我想为主机系统编译我们的 buildroot 环境的一部分(/usr/bin/gcc 等)。
我尝试在/usr 中指定 external_toolchain 但失败。有人成功做到过这样的事情吗?
buildroot 手册说这是不受支持的,因为他们无法将其导入到 rootfs 中。但对于测试用例来说,rootfs 不是必需的。
最佳答案
是的,不幸的是,这是不可能的。为了对 Buildroot 有用,工具链必须是“纯”工具链,即仅包含 C 库二进制文件和头文件。您的/usr 中充斥着来自主机的无数库,并且由于 Buildroot 制作了工具链 sysroot 的完整副本(在您的情况下,将是/usr),因此它会复制很多很多东西。
所以,我们肯定不支持这种做法,而且我们也不打算支持这种做法。您还可以决定使用 x86 或 x86_64 交叉编译器构建程序,让 Buildroot 生成最小的 Linux 系统,然后直接在您的开发 PC 上对其进行 chroot。
关于带有主机工具链的 buildroot 环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10833672/