2

我想用主机类型 Linux x86_64 和--target=sparc-sun-solaris2.10.

我已经成功构建了带有--target标志的 binutils 以及 GMP、MPFR 和 MPC。

我已将 Binutils 和 GCC 配置为使用--with-build-sysroot=$SYSROOT标志并递归复制

  • /usr/include
  • /lib
  • /usr/lib

从目标主机到它,以便我的$SYSROOT目录包含usrlib.

在构建 GCC 之前,我还将 PATH 和 LD_LIBRARY_PATH 设置为我的前缀。

但是,当我尝试构建 GCC 时,尝试构建 libgcc(我相信是第二阶段)失败并出现错误:

gcc/include-fixed/limits.h:169:61: error: no include path in which to search for limits.h

我已经验证了它limits.h确实存在,$SYSROOT/usr/include那么为什么 GCC 不使用它呢?

请帮助解决这个问题。

如果我可以交叉编译我们的代码以在 x86_64 上工作,它将为我们的大公司节省大量工时。与 SPARC 相比,x86_64 的性能快如闪电,编译等待时间是我们生产力的一大瓶颈。

4

1 回答 1

1

您可能会遇到sysroot 值设置不正确的情况。您可能应该尝试使用详细选项进行构建......因为它可能会揭示这一点。

于 2013-03-06T15:21:04.613 回答