Dettagli su questo pacchetto si trovano nella Sezione 6.12.2, «Contenuti di GCC.»
Il pacchetto GCC contiene la collezione di compilatori GNU, che include i compilatori C e C++.
La documentazione di GCC raccomanda di costruire GCC al di fuori della directory dei sorgenti, in una directory di costruzione dedicata:
mkdir -v ../gcc-build cd ../gcc-build
Preparare GCC per la compilazione:
../gcc-4.0.3/configure --prefix=/tools \ --with-local-prefix=/tools --disable-nls --enable-shared \ --enable-languages=c
Significato delle opzioni di configurazione:
Lo scopo di questa opzione è di rimuovere /usr/local/include dal percorso di ricerca di include di gcc. Ciò non è assolutamente essenziale, tuttavia aiuta a minimizzare l'influenza del sistema host.
Questa opzione permette la costruzione di libgcc_s.so.1 e libgcc_eh.a. Avere libgcc_eh.a disponibile assicura che lo script configure per Glibc (il prossimo pacchetto che compiliamo) produca risultati appropriati.
Questa opzione assicura che venga costruito solo il compilatore C.
Continuare con la compilazione del pacchetto:
make bootstrap
Significato delle opzioni di configurazione:
Questo target non si limita a compilare GCC, ma lo compila molte volte. Usa i programmi compilati in un primo round per compilare se stesso una seconda volta, e quindi di nuovo una terza volta. Quindi confronta la seconda e la terza compilazione per essere sicuro di potersi riprodurre perfettamente. Questo presuppone anche che sia compilato correttamente.
La compilazione è ora completa. A questo punto normalmente verrebbe eseguita la suite di test, ma, come citato in precedenza, il framework della suite di test non è ancora al suo posto. I benefici derivanti dall'esecuzione dei test a questo punto sono minimi, poiché i programmi del primo passo verranno presto rimpiazzati.
Installare il pacchetto:
make install
Come tocco finale creare un symlink. Molti programmi e script eseguono cc invece di gcc, che è usato per avere programmi generici e solitamente usabili su tutti i tipi di sistemi UNIX, dove il compilatore C GNU non è sempre installato. Eseguire cc lascia l'amministratore di sistema libero di decidere quale compilatore C installare.
ln -vs gcc /tools/bin/cc
Dettagli su questo pacchetto si trovano nella Sezione 6.12.2, «Contenuti di GCC.»