Сборка gcc-4.8
Я пытаюсь скомпилировать gcc/g++ 4.8 на 64-битном сервере Fedora 17. Я настраиваю процесс сборки остроумия
./configure --prefix=/opt/gcc-4.8 --with-cpu=x86-64 --enable-languages=c,c++ --disable-multiarch
Затем я запускаю make. Сборка разбивается на некоторое время, а затем завершается неудачно, когда не может найти crti.o. Я заметил, что шаги компиляции до сбоя используют опцию -m32, которая означает, что компиляция выполняется для 32-битной архитектуры. Когда я искал crti.o, я нашел его в пути /usr/lib64, а не в пути / usr / lib, который обычно для 32-битных систем. Я хочу компилировать только для 64-битных систем, поэтому для настройки я включил аргумент with-cpu. Очевидно, этого недостаточно.
Какие аргументы мне нужно включить в configure, чтобы из исходного кода были сделаны только 64-битные компиляции и были связаны только 64-битные системные библиотеки и подобные файлы?
1 ответ
Я также использую 64-битный fc17 и имею crti.o:
$ locate crti.o
/usr/lib/crti.o
/usr/lib64/crti.o
$ rpm -qf /usr/lib/crti.o
glibc-devel-2.15-58.fc17.i686
$ rpm -qf /usr/lib64/crti.o
glibc-devel-2.15-58.fc17.x86_64
Попробуйте явно установить 32-битную версию glibc-devel:
yum install glibc-devel.i686