制作交叉编译环境时,编译 gcc 出错! 特来求救!
我用Linux内核是2.6.14版,binutils是binutils-2.14版,gcc 源码包是gcc-3.3.2版,
成功的编译了 binutils,解压gcc-3.3.2.tar.bz2成功之后, t-linux 文件的配置信息如下:
在文件末尾添加了如下2行
...
TAFGET_LIBGCC2_CFLAGS += -Dinhibit_libc -D__gthr_posix_h
T_CFKAGS = -Dinhibit_libc -D__gthr_posix_h
配置生成 makefile 的命令如下:
../configure --target=arm-linux --prefix=/usr/local/arm/3.3.2 \
--with-headers=/root/crosstool/linux-2.6.x/include --disable-shared \
--disable-threads --enable-languages="c"
我的用户是root, --prefix与--with-headers路径都是正确的。
生成 makefile 文件成功,接着开始编译。
编译时发生了如下错误,编译失败。
make[2]: arm-linux-ar: Command not found
make[2]: *** [libgcc.a] Error 127
make[2]: Leaving directory `/root/crosstool/gcc-3.3.2/build-arm-linux/gcc'
make[1]: *** [libgcc.a] Error 2
make[1]: Leaving directory `/root/crosstool/gcc-3.3.2/build-arm-linux/gcc'
make: *** [all-gcc] Error 2
搞了3个晚上,近14个小时都没搞定,肯请高手们帮忙指点迷津!先行谢过。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
建议binutils的版本改成binutils-2.16的,稳定性好,编译成功率高, "make[2]: arm-linux-ar: Command not found"这里面的ar就是binutils这个包里面的一个工具.
configure命令--with-headers=/root/crosstool/linux-2.6.x/include 你确认你的内核文件解压后就叫linux-2.6.x吗?应该是linux-2.6.14吧
谢谢2楼的高手指点,linux-2.6.x是我建的一个文件夹的名字,我都不知道这有关系。我照你的看法试一下看看!