C语言 GCC_NO_EXECUTABLES ---交叉编译工具链后不允许进行链接测试



>我正在尝试使用本教程构建交叉编译器:http://wiki.osdev.org/OS_Specific_Toolchain

在成功构建binutils,all-gcc,newlib

之后

我在构建 gcc 中制造的最后一部分遇到错误

checking for shl_load... configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES.
Makefile:8970: recipe for target `configure-target-libstdc++-v3' failed
make[1]: *** [configure-target-libstdc++-v3] Error 1
make[1]: Leaving directory `/usr/src/build-gcc'
Makefile:870: recipe for target `all' failed
make: *** [all] Error 2

请帮忙...

我不知道

你配置命令选项。但是如果你给了 --enable-language=c,请将其更改为 --enable-languages=c或者您可能正在使用 c 和 c++ 语言编译引导程序。在这种情况下,会发生此错误。

我在尝试为 ARM 构建交叉编译器时遇到了这个问题。 最终,改用crosstool-NG。 这是一个大大简化过程的脚本。 它对我来说就像一个魅力。

我知道

这很老了,但对于其他人,我有一个警告和一个解决方法:

警告:通过尝试从 LFS 指令盲目构建本机工具链或弄乱--with-sysroot,您可能会得到 OP 的错误

请务必先检查您的./config.log。如果您看到与"找不到 stdio.h"或其他丢失的 *.h 文件相关的错误,很可能您的GCC不知道在哪里可以找到您的库/标头。

OP可以通过用"-B"和"-I"标志覆盖CC环境变量来强制它找到它们。

例如

CC="${LFS_TGT}-gcc -B${LFS}/lib -I${LFS}/include" 
"../gcc-0.0.0/libstdc++-v3/configure"

最新更新