Я знаю, компилировать компилятор - это ирония. Но мне нужна конкретная версия этого компилятора, а репозитории CentOS 5.x имеют не самые последние версии GCC.
Мне нужна версия 4.3.2, но у меня есть только 4.1.1.
Я следовал этому руководству для установки gcc http://www.mjmwired.net/resources/mjm-fedora-gcc.html и использовал следующие параметры при конфигурировании (до компиляции):
/ root / gcc / gcc-4.3.6 / configure --prefix = / opt / gcc43 --program-суффикс = 43 --enable-languages = c, c ++ --enable-shared --enable-threads = posix --disable-проверять --with-system-zlib --enable -__ cxa_atexit --disable-libunwind-исключения --disable-multilib
Последний вариант --disable-multilib
сохранить меня для другой ошибки, которую я получил в предыдущих попытках компиляции (после долгого времени компиляции ...)
Также я установил переменную окружения, потому что в предыдущих попытках я получал ошибки, поэтому я установил следующее:
export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib:$LD_LIBRARY_PATH
Это обеспечивает компилятору поиск в библиотеках mpfr и gmp (которые необходимы) в этом каталоге
Итак, я выполняю команду make.
Я думал, что все было в порядке, потому что это время заняло больше времени (в моей последней попытке перед установкой этой переменной у меня ушло около 2 часов компиляции)
Я использовал экземпляр Micro в Amazon Web Services, этот экземпляр имеет только 1 одноядерный процессор x86_64 и 613 МБ ОЗУ, , поэтому для компиляции потребовалось около 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
Есть предложения?