cc1、cc1plus 的 GCC 5.2 错误

GCC 5.2 Error with cc1, cc1plus

我在为 CentOS 7 制作 GCC 5.2 时收到以下错误。我添加了一些文件以使其工作,libstdc++-devel、ccache 以及 运行 和 'download prerequisites' 命令。以下是错误消息出现之前发生的情况。

 cp/cp-lang.o c-family/stub-objc.o cp/call.o cp/decl.o cp/expr.o cp/pt.o 
 cp/typeck2.o cp/class.o cp/decl2.o cp/error.o cp/lex.o cp/parser.o 
 cp/ptree.o cp/rtti.o cp/typeck.o cp/cvt.o cp/except.o cp/friend.o 
 cp/init.o cp/method.o cp/search.o cp/semantics.o cp/tree.o cp/repo.o 
 cp/dump.o cp/optimize.o cp/mangle.o cp/cp-objcp-common.o cp/name-lookup.o 
 cp/cxx-pretty-print.o cp/cp-cilkplus.o cp/cp-gimplify.o cp/cp-array-notation.o
 cp/lambda.o cp/vtable-class-hierarchy.o cp/constexpr.o cp/cp-ubsan.o
 attribs.o incpath.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o 
 c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o 
 c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o 
 c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o 
 c-family/c-cilkplus.o c-family/array-notation-common.o c-family/cilk.o 
 c-family/c-ubsan.o i386-c.o glibc-c.o cc1plus-checksum.o libbackend.a main.o  
 libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber
 /libdecnumber.a libcommon.a ../libcpp/libcpp.a   ../libbacktrace/.libs
 /libbacktrace.a ../libiberty/libiberty.a 
 ../libdecnumber/libdecnumber.a   -lmpc -lmpfr -lgmp -rdynamic -ldl  -L../zlib -lz

编辑...(错误前的处理)

collect2: error: ld returned 1 exit status
collect2: error: ld returned 1 exit status
make[3]: *** [cc1plus] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [cc1] Error 1
make[3]: Leaving directory `/usr/local/gcc-5.2/gcc-5.2.0/objdir/gcc'
make[2]: *** [all-stage3-gcc] Error 2
make[2]: Leaving directory `/usr/local/gcc-5.2/gcc-5.2.0/objdir'
make[1]: *** [stage3-bubble] Error 2
make[1]: Leaving directory `/usr/local/gcc-5.2/gcc-5.2.0/objdir'
make: *** [all] Error 2

来自 config.log 文件(已添加)

 configure:5989: checking for compatible ISL
 configure:6002: gcc -msse2 -flto -fuse-linker-plugin -o conftest -g -O2
  -lisl conftest.c  -lisl >&5
 conftest.c:10:21: fatal error: isl/val.h: No such file or directory
 #include <isl/val.h>

通过 Google 的各种搜索,没有找到任何结果。大多数错误都有 cc1 错误的特定错误,而我的设置只输出 "Leaving Directory"。查看 GCC 网页上的潜在错误没有发现任何问题。我已经使用以下设置设置了编译文件。感谢您的帮助。

/usr/local/gcc-5.2/gcc-5.2.0/configure --prefix=/usr/local/sbin/gcc-5.2.0
--enable-languages=c,c++  --disable-multilib 

我不得不更改 ./configure 设置并阅读 Linux from Scratch。在@iharob 的帮助下,我能够编译 GCC。下面是新的 ./configure 设置。

/usr/local/gcc-5.2/gcc-5.2.0/configure --prefix=/usr/local/gcc-5.2/gcc-5.2.0/objdir 
--enable-languages=c,c++ --enable-threads=posix --disable-multilib 
--disable-nls --disable-bootstrap LD_LIBRARY_PATH=/usr/local/lib

我可能不需要 LD_LIBRARY_PATH 标志,但我谨慎行事。