我希望创建一个针对ARM系统的GCC本地构建,并且遇到了一些问题。构建机器是i686-linux。我看到的每个教程都告诉我如何设置实际的交叉编译套件(我已经使用crosstools-ng完成了这个过程)。但是,我没有看到与编译本地ARM GCC有关的任何内容。我使用的配置字符串如下,我只使用头文件设置了sysroot。我还进行了交叉编译和安装GMP和MPFR。
../../gcc-4.3.5/configure \
--host=arm-unknown-linux-gnueabi \
--build=i686-build_pc-linux-gnu \
--target=arm-unknown-linux-gnueabi \
--prefix=/home/vm/gcc-native/sysroot \
--with-sysroot=/home/vm/gcc-native/sysroot \
--enable-shared --enable-threads --disable-libmudflap --disable-libssp \
--disable-libgomp --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld \
--enable-languages=c,c++ --enable-symvers=gnu --enable-__cxa_atexit \
--disable-nls --disable-multilib \
--with-gmp=/home/vm/gcc-native/sysroot/ \
--with-mpfr=/home/vm/gcc-native/sysroot/
GCC将会编译一段时间,但随后出现以下错误:
我不确定这会在我的系统上运行,因为我正在i686-linux上构建,而目标/宿主都是arm-linux。我现在的想法是找到一个ltib发行版,并查看GCC的规范文件,尝试按照所有步骤进行操作。ltib为我的板子提供的GCC由于与std命名空间的冲突而在我的系统上无法编译。检查目标文件的后缀...配置:错误:无法计算目标文件的后缀名:无法编译。
如有任何信息/链接,请告知!
configure
脚本的内部,找到计算目标文件后缀的部分,并弄清楚为什么它失败了。或者只需将其修复为始终返回.o
。 - n. m.