Смысл в установке GCC-3.3.4 в том, что некоторые пакеты BLFS (такие как компилированные Java и OpenOffice) не могут быть обновлены для компиляции с GCC-3.4.1. В дополнение, некоторые предкомпилированные пакеты могут требовать библиотеки GCC-3.3.4.
Адрес (HTTP): http://ftp.gnu.org/gnu/gcc/gcc-3.3.4/gcc-3.3.4.tar.bz2
Адрес (FTP): ftp://ftp.gnu.org/gnu/gcc/gcc-3.3.4/gcc-3.3.4.tar.bz2
Контрольная сумма: a1c267b34f05c8660b24251865614d8b
Размер: 23 MB
Требуемое дисковое пространство: 489 MB
Расчетное время сборки: 5.72 SBU (дополнительно 12.54 SBU для запуска тестов)
DejaGnu-1.4.4 (необходим для запуска полного теста)
patch -Np1 -i ../gcc-3.3.4-no_fixincludes-1.patch &&
patch -Np1 -i ../gcc-3.3.4-linkonce-1.patch &&
mkdir ../gcc-build &&
cd ../gcc-build &&
../gcc-3.3.4/configure \
--prefix=/opt/gcc-3.3.4 \
--enable-shared --enable-languages=c,c++ \
--enable-threads=posix &&
make bootstrap
Если хотите, запустите тест, используя следующие команды. Команды test_summary создадут лог-файлы, которые могут быть сравнены с известными положительными результатами, размещенными на http://linuxfromscratch.org/~randy/gcc-334-lfs-6.0-test_summary.log и http://linuxfromscratch.org/~randy/gcc-334-lfs-6.0-test_summary_short.log.
make -k check &&
../gcc-3.3.4/contrib/test_summary >test_summary.log 2>&1 &&
../gcc-3.3.4/contrib/test_summary | \
grep -A7 Summ >test_summary_short.log 2>&1
А теперь, как пользователь root:
make install &&
mv /opt/gcc-3.3.4/lib/libstdc++.so.5* /usr/lib &&
ln -sf /usr/lib/libstdc++.so.5.0.6 /opt/gcc-3.3.4/lib &&
ln -sf libstdc++.so.5.0.6 /opt/gcc-3.3.4/lib/libstdc++.so.5 &&
chown -R root:root \
/opt/gcc-3.3.4/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include
mkdir ../gcc-build; cd ../gcc-build: Команда разработчиков GCC рекомендует проводить сборку в отдельной директории.
--enable-shared --enable-languages=c,c++ --enable-threads=posix: Настраивает GCC на сборку C и C++ компиляторов и включает соответствующие опции C++.
mv /opt/gcc-3.3.4/lib/libstdc++.so.5* /usr/lib: Перемещает библиотеки C++ в стандартную для библиотек директорию для избежания добавления /opt/gcc-3.3.4/lib в /etc/ld.so.conf.
Как с большинством библиотек, просто сохраним библиотеки в своей директории, т.е. /opt/lib или /usr/local/lib должны присутствовать в /etc/ld.so.conf, поэтому ldd сможет найти разделяемые библиотеки. После проверки /etc/ld.so.conf необходимо запустить /sbin/ldconfig под пользователем root.
Если вам необходимы только библиотеки GCC-3.3.4, вы можете удалить /opt/gcc-3.3.4.
Каждый раз, когда вам надо использовать GCC-3.3.4 вместо вашего системного компилятора, добавьте /opt/gcc-3.3.4/bin в начало переменной PATH или (предпочтительнее) установите переменную окружения CC перед компиляцией пакета.
Последнее обновление 2005-02-27 19:21:57 -0700