Ошибка 32 библиотеки разработки после установки glibc-devel.i686

11

Я пытаюсь установить GCC 4.9.0 на CentOS 6. Во ./configureвремя ошибки появляется:

/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgcc_s.so when searching for -lgcc_s
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-   linux/4.4.7/libgcc_s.so when searching for -lgcc_s
/usr/bin/ld: cannot find -lgcc_s
collect2: ld returned 1 exit status
configure: error: I suspect your system does not have 32-bit developement libraries (libc and headers). If you have them, rerun configure with --enable-multilib. If you do not have them, and want to build a 64-bit-only compiler, rerun configure with --disable-multilib.

Я искал ответ и обнаружил, что эта ошибка должна быть решена путем установки glibc-devel.i686пакета.

Тем не менее, та же ошибка сохраняется даже после того, как я установил его с помощью yum. Любые идеи?

Gosere
источник

Ответы:

10

Чтобы быть чуть более ясным, чем ответ @Miroslav:

1 Зависимости

#64-bit (`x86_64`) C library and headers
yum install libgcc
yum install glibc-devel

# 32-bit (‘i386’) C library and headers
yum install libgcc.i686
yum install glibc-devel.i686

Посмотреть все из них в GCC Предварительные требования .

2 Затем скомпилируйте с --enable-multilib

../configure --enable-languages=all --prefix=/usr/local/gcc --enable-multilib

Редактировать.

Примечание: не компилируйте в тот же каталог, как я вижу ./configureв вашем примере. Смотрите Установка GCC

Не запускайте ./configure, это не поддерживается, вам нужно запустить configure из-за пределов исходного каталога

Мик
источник
2

Я бы сказал, что вам нужно установить libgcc.i686

Мирослав Франк
источник