我想从源码编译一个gcc,因为我不能使用yum,apt-get等等。 我的步骤很简单:
– 我在我的电脑上下载了GCC源代码(我尝试了gcc-4.8.4和gcc-5.3.0)
./contrib/download_prerequisites
在此之后,我使用powerPC和Linux将此gcc源文件发送到我的系统。
mkdir objdir cd objdir ../gcc-4.6.2/configure --prefix=/usr --enable-languages=c,c++,fortran,go make
我有下一个错误:
In file included from ../../gcc-4.9.2/gcc/genmddeps.c:19:0: ../../gcc-4.9.2/gcc/system.h:205:20: fatal error: cstring: No such file or directory # include <cstring> ^ compilation terminated. make[3]: *** [build/genmddeps.o] Error 1 make[3]: Leaving directory `/home/root/build/gcc' make[2]: *** [all-stage1-gcc] Error 2 make[2]: Leaving directory `/home/root/build' make[1]: *** [stage1-bubble] Error 2 make[1]: Leaving directory `/home/root/build' make: *** [all] Error 2
任何想法是什么错了?
最好的祝福
一些建议:首先,编译(特别是为了学习的目的)比GCC 更简单 ,例如GNU make,如果你从来没有从源代码编译GNU的东西。
然后编译一个最近的 GCC(2016年1月5.3) – 构建问题将与4.8相同,而GCC 5更好! 您的主机 (运行未来交叉编译器的机器)需要gcc
& libc-dev
& g++
& libstdc++-dev
。 我不确定你的--prefix=/usr
是个好主意。 考虑一下--program-suffix=-mine
选项(否则,你的系统的/usr/bin/gcc
可能会被覆盖,这是你不想发生的)
你可以保留默认的--prefix=/usr/local
,稍后将/usr/local/bin/
到PATH