我尝试使用 crosstool-ng 为 RHEL7.1 的强大功能制作交叉编译器,这意味着:
- ppc64le(powerpc 64 位小端)
- glibc 2.17
- 内核 3.10
我觉得我错过了一些重要的补丁,因为我收到了消息
[INFO ] =================================================================
[INFO ] Installing C library headers & start files
[INFO ] =================================================================
[INFO ] Building for multilib 1/1: ''
[EXTRA] Configuring C library
[ERROR] checking sysdep dirs... configure: error: The powerpc64le is not supported.
感谢任何帮助
最佳答案
您使用哪个 GCC 版本? Red Hat Enterprise Linux 7 系统编译器是 GCC 4.8,但是里面的 ppc64le 支持是自定义的 backport。上游 GCC 支持仅在 4.9 版中出现。此外,在 2.19 版上游添加了对 ppc64le 的 glibc 支持,追溯至 2.17 版。
如果您想从头开始构建与 Red Hat Enterprise Linux 7 兼容的 ppc64le 工具链,则必须追溯这些向后移植并构建类似的东西。 (使用较新版本不会导致 ABI 与 Red Hat Enterprise Linux 7 兼容,只有至少发布这些版本作为基准的发行版才会兼容。)
如果你不是绝对需要交叉编译器,从Developer Toolset software collection开始可能更容易。就 ppc64le 上的 DTS 询问 Red Hat 支持也很有意义。
关于cross-compiling - RHEL ppc64le 目标的交叉编译器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45141078/