Как построить gcc 4.7.2 на CentOS 6 x64


Я пытаюсь построить последнюю (на момент написания этой статьи) версию GCC на CentOS. Я скачал и построил GMP, MPFR и MPC. Эти библиотеки расположены в каталоге /usr / local (то есть usr/local/lib для библиотек и /usr/local/include для includes). Теперь я пытаюсь настроить GCC для сборки со следующей командой:

./configure --with-gmp=/usr/local --with-mpfr=/usr/local --with-mpc=/usr/local

И я получаю следующее сообщение об ошибке:

checking for the correct version of gmp.h... yes
checking for the correct version of mpfr.h... yes
checking for the correct version of mpc.h... yes
checking for the correct version of the gmp/mpfr/mpc libraries... no
configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.
Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify their locations.

Какова может быть причина? Библиотеки строятся, расположение правильное, заголовочные файлы распознаются, но библиотеки сами они таковыми не являются. Я также попробовал это:

./configure --with-gmp-lib=/usr/local/lib \
--with-mpfr-lib=/usr/local/lib --with-mpc-lib=/usr/local/lib
Но результат тот же самый.
3   4  

3 ответа:

Настоятельно рекомендую использовать GCC SRC (http://www.gnu.org/software/gsrc/)

Сначала нужно установить Python и bzr.

Затем после настройки (шаги на веб-странице gsrc), просто сделайте это в каталоге gsrc

Make-C gnu/gcc
make-C gnu / gcc install

Спасибо, я исследовал сам; проблема в том, что в CentOS 6 есть предустановленные старые версии GMP/MPFR/MPC, и они конфликтовали с моими новыми встроенными библиотеками.

Кто-то написал для этого сценарий. В ней рассматривается вопрос о зависимостях библиотек от этих библиотек и зависимостей между ними. http://joelinoff.com/blog/?p=811

Он работал для меня с некоторой незначительной модификацией, но полученный gcc имеет странный путь ссылки (он генерирует двоичные файлы, которые все еще ищут libstdc++.so в обычных системных путях, которые содержат старые библиотеки. У меня есть вопрос по этому поводу:

Как построить и установить gcc со встроенным путь rpath?