构建 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、字符串等)结尾,但缺少一些重要的二进制文件,如 as
和 ld
。我想我正确配置了 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 子系统下,也许这与它有关。
参见第 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
)。
作为尝试构建 gcc 8.2 交叉编译器(针对 ia64-hp-hpux11.31)的一部分,我 运行 遇到了构建 binutils 2.31.1 的问题。构建实际上似乎完成得很好。我以一堆二进制文件(ar、objdump、字符串等)结尾,但缺少一些重要的二进制文件,如 as
和 ld
。我想我正确配置了 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 子系统下,也许这与它有关。
参见第 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
)。