La ragione per installare GCC-3.3.4 è che alcuni pacchetti BLFS (come i compilati Java e OpenOffice) non sono stati aggiornati per essere compilabili con GCC-3.4.1. In aggiunta alcuni pacchetti precompilati potrebbero richiedere le librerie GCC-3.3.4.
Download (HTTP): http://ftp.gnu.org/gnu/gcc/gcc-3.3.4/gcc-3.3.4.tar.bz2
Download (FTP): ftp://ftp.gnu.org/gnu/gcc/gcc-3.3.4/gcc-3.3.4.tar.bz2
Download MD5 sum: a1c267b34f05c8660b24251865614d8b
Dimensione del download: 23 MB
Stima dello spazio su disco richiesto: 489 MB
Stima del tempo di costruzione: 5.72 SBU (additional 12.54 SBU to run the test suite)
DejaGnu-1.4.4 (necessario per eseguire la test suite completa)
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
Se lo si desidera eseguire la test suite usando i seguenti comandi. I comandi test_summary creano file log che possono essere comparati per conoscere i risultati giusti presso http://linuxfromscratch.org/~randy/gcc-334-lfs-6.0-test_summary.log e 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
Ora, come utente 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: il team di sviluppo di GCC raccomanda di costruirlo in una directory separata.
--enable-shared --enable-languages=c,c++ --enable-threads=posix: configurare GCC per costruire i compilatori C e C++ e abilitare le relative opzioni C++.
mv /opt/gcc-3.3.4/lib/libstdc++.so.5* /usr/lib: spostare le librerie C++ alla directory lib standard per evitare di dover aggiungere /opt/gcc-3.3.4/lib a /etc/ld.so.conf.
Come per molte librerie non bisogna fare nessuna configurazione, tranne che la directory della libreria, ad esempio /opt/lib o /usr/local/lib devono apparire in /etc/ld.so.conf, così che ldd possa trovare le librerie condivise. Dopo aver verificato che è questo il caso, /sbin/ldconfig deve venire eseguito mentre si è nel sistema come root.
Se si ha bisogno solo delle librerie GCC-3.3.4 si può cancellare /opt/gcc-3.3.4.
Qualora si abbia bisogno di usare GCC-3.3.4 invece del compilatore installato del proprio sistema aggiungere /opt/gcc-3.3.4/bin all'inizio del proprio PATH o (preferibilmente) settare la variabile d'ambiente CC prima di compilare i relativi pacchetti.
Last updated on