Ошибки 1 и 2 при компиляции GCC 4.4.2 на OpenSolaris 2009.06
-
06-07-2019 - |
Вопрос
Моя проблема:
Я пытался скомпилировать, собрать и установить GCC 4.4.2 в моей установке OpenSolaris 2009.06 на моем компьютере VirtualBox 3 i386.Но я продолжаю получать ту же ошибку при запуске make:
> checking whether ln -s works... yes
checking for i386-pc-solaris2.11-gcc... /src/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/xgcc -B/src/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/ -B/usr/gnu/i386-pc-solaris2.11/bin/ -B/usr/gnu/i386-pc-solaris2.11/lib/ -isystem /usr/gnu/i386-pc-solaris2.11/include -isystem /usr/gnu/i386-pc-solaris2.11/sys-include
checking for suffix of object files... configure: error: in `/src/gcc-4.4.2/i386-pc-solaris2.11/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details.
make[2]: *** [configure-stage1-target-libgcc] Error 1
make[2]: Leaving directory `/src/gcc-4.4.2'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/src/gcc-4.4.2'
make: *** [all] Error 2
Предпринятые решения:
Я попробовал найти ответ на этот вопрос:Проблема при компиляции gcc 4.4.0 на OpenSolaris 2009.6 т. е.
./configure --prefix=/usr/gnu --с-gmp=/usr/gnu --с-mpfr=/usr/gnu --с-as=/usr/sfw/bin/gas --с-gnu-as --с-gnu-ld
Я попробовал решение GNU GCC для конкретной платформы:Конкретные инструкции по сборке GNU Solaris т. е.
./configure --prefix=/usr/gnu --с-gmp=/usr/gnu --с-mpfr=/usr/gnu --с-as=/usr/sfw/bin/gas --с-gnu-as --с-ld=/usr/ccs/bin/ld --без-gnu-ld --включить общий доступ
Я все еще получаю те же ошибки, несмотря на запуск ./configure с помощью двух приведенных выше решений
Мы будем признательны за любую помощь!Спасибо!
Решение
Можете ли вы компилировать программы с помощью существующего GCC?
Если нет, вам нужно решить эту проблему.
Если вы можете, то вам нужно взглянуть на эту чудовищную команду с семью аргументами (ту, где написано "проверка i386-pc-solaris2.11-gcc" - зачем эти 7 аргументов?).
Вы используете "make bootstrap"?
Если нет, то что произойдет, когда вы это сделаете?
Если да, то где это происходит в процессе обработки?(Это стадия 1, или стадия 2, или что еще?)
Используете ли вы рекомендуемую настройку, с исходным кодом для GCC, скажем, в /src / gcc-4.4.2 и объектными файлами, скажем, в /src / gcc-4.4.2-obj?
Если нет, сделайте это.Использование:
cd /src/gcc-4.4.2-obj; ../gcc-4.4.2/configure ...
Какую оболочку вы используете?
В обычном Solaris 10 (не OpenSolaris - и SPARC, не Intel) я должен установить CONFIG_SHELL=/bin /ksh в среде, чтобы заставить вещи компилироваться (по умолчанию он использует /bin/sh, но /bin / sh в Solaris 10 является оболочкой Bourne, и в глубине раздела Java (IIRC) есть скрипт, который использует обозначения оболочки Bash / Korn / POSIX, такие как
$(cmd ...)
).Однако обычно это влияет на гораздо более позднюю стадию обработки.
Тем не менее, я получил GCC 4.4.2 на Solaris 10 без проблем (используя GCC 4.4.1 в качестве загрузочного компилятора).