我知道编译编译器是一种讽刺。但我需要这个编译器的特定版本,而CentOS 5.x仓库里没有最新版本的GCC。
我需要的版本是4.3.2,但我只有4.1.1。
我按照这篇教程安装了gcchttp://www.mjmwired.net/resources/mjm-fedora-gcc.html,并在配置(编译之前)时使用了以下参数:
/root/gcc/gcc-4.3.6/configure --prefix=/opt/gcc43 --program-suffix=43 --enable-languages=c,c++ --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --disable-multilib
最后一个选项
此外,我设置了一个环境变量,因为以前我遇到过错误,所以我设置如下:
有什么建议吗?
我需要的版本是4.3.2,但我只有4.1.1。
我按照这篇教程安装了gcchttp://www.mjmwired.net/resources/mjm-fedora-gcc.html,并在配置(编译之前)时使用了以下参数:
/root/gcc/gcc-4.3.6/configure --prefix=/opt/gcc43 --program-suffix=43 --enable-languages=c,c++ --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --disable-multilib
最后一个选项
--disable-multilib
为我解决了先前编译尝试中遇到的错误(经过长时间编译后...)。此外,我设置了一个环境变量,因为以前我遇到过错误,所以我设置如下:
export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib:$LD_LIBRARY_PATH
确保编译器在该目录中搜索 mpfr 和 gmp 库(这是必需的)
因此,我执行了“make”命令。
我以为一切都没问题了,因为这次编译花费的时间更长了(在设置那个变量之前的最后一次尝试花费了大约2小时编译)。
我在 Amazon Web Services 中使用了一个微型实例,该实例只有一个单核 x86_64 处理器和 613 MB 的 RAM,所以编译大约需要 9 小时。
不幸的是,我又遇到了错误!!现在我得到了这个:
make[2]: Entering directory `/root/gcc/build'
make[3]: Entering directory `/root/gcc/build'
rm -f stage_current
make[3]: Leaving directory `/root/gcc/build'
Comparing stages 2 and 3
warning: ./cc1-checksum.o differs
warning: ./cc1plus-checksum.o differs
Bootstrap comparison failure!
./gcc.o differs
./varasm.o differs
./except.o differs
./i386.o differs
make[2]: *** [compare] Error 1
make[2]: Leaving directory `/root/gcc/build'
make[1]: *** [stage3-bubble] Error 2
make[1]: Leaving directory `/root/gcc/build'
make: *** [all] Error 2
有什么建议吗?