构建 binutils-2.31.1:未生成链接器

Building binutils-2.31.1: No linker produced

作为尝试构建 gcc 8.2 交叉编译器(针对 ia64-hp-hpux11.31)的一部分,我 运行 遇到了构建 binutils 2.31.1 的问题。构建实际上似乎完成得很好。我以一堆二进制文件(ar、objdump、字符串等)结尾,但缺少一些重要的二进制文件,如 asld。我想我正确配置了 binutils,明确启用 ld 并禁用 gold:../binutils-2.31.1/configure --target=ia64-hp-hpux11.31 --enable-ld=yes --enable-gold=no.

我扫描了整个构建过程的 stdout + stderr 输出,但没有找到任何提示。唯一可疑的是 configure 输出:checking whether we are cross compiling... no。那不应该说是吗,因为我正在构建交叉编译?如果我对 --build--host--target 工作方式的理解是正确的,那不应该意味着交叉编译吗?

请注意,这是我第一次尝试构建交叉编译器。我还应该注意到,我的 Linux "machine" 是 Ubuntu 16.04.2 LTS 在 Linux 的 Windows 子系统下,也许这与它有关。


My config.log

参见第 3744 行的 configure 脚本:

  ia64*-**-hpux*)
    # No ld support yet.
    noconfigdirs="$noconfigdirs gdb libgui itcl ld"
    ;;

这会导致在构建过程中跳过 ld 目录。

虽然你应该有一个汇编程序,构建为 gas/as-new(在 make install 之后将安装为 ia64-hp-hpux11.31-as)。