我想构建一个主机类型为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
目录包含usr
和lib
。
在构建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
我已经验证了$SYSROOT/usr/include
中确实存在limits.h
,那么GCC为什么不使用它呢?
请帮忙。
如果我能交叉编译我们的代码来处理x86_64,这将为我们的大公司节省很多工时。与SPARC相比,x86_64的性能闪电般快,编译等待时间是我们生产力的一大瓶颈。
您可能会遇到系统根值设置不正确的情况。您可能应该尝试使用详细选项进行构建。。。正如它可能揭示的那样。