5.14. Binutils-2.15.91.0.2 - Passo 2

Il pacchetto Binutils contiene un linker, un assemblatore e altri tool per manipolare file oggetto.

Tempo approssimativo di costruzione: 1.5 SBU

Spazio su disco richiesto: 108 MB

L'installazione di Binutils dipende da: Bash, Coreutils, Diffutils, GCC, Gettext, Glibc, Grep, Make, Perl, Sed, Texinfo

5.14.1. Re-installazione di Binutils

Questo pacchetto è noto per avere problemi quando i suoi flag di ottimizzazione (incluse le opzioni -march e -mcpu) vengono cambiati. Se è stata definita una qualunque delle variabili ambiente che si sovrappone alle ottimizzazioni di default, come CFLAGS e CXXFLAGS, disallocarle quando si costruisce Binutils.

Creare nuovamente una directory di costruzione separata:

mkdir ../binutils-build
cd ../binutils-build

Preparare Binutils per la compilazione:

../binutils-2.15.91.0.2/configure --prefix=/tools \
    --enable-shared --with-lib-path=/tools/lib

Significato delle opzioni di configurazione:

--with-lib-path=/tools/lib

Questa dice allo script configure di specificare il percorso di ricerca della libreria durante la compilazione delle Binutils, che significa passare /tools/lib al linker. Questo impedisce che il linker cerchi nelle directory delle librerie sull'host.

Compilare il pacchetto:

make

La compilazione è ora completa. Come discusso in precedenza, eseguire la suite di test non è obbligatorio per i tool temporanei in questo capitolo. Per eseguire comunque la suite di test delle Binutils, digitare il seguente comando:

make check

Installare il pacchetto:

make install

Ora preparare il linker per la fase di “Risistemazione” nel prossimo capitolo:

make -C ld clean
make -C ld LIB_PATH=/usr/lib:/lib
[Avvertimento]

Avvertimento

Non rimuovere ancora le directory di costruzione e dei sorgenti delle Binutils. Esse saranno di nuovo necessarie nel loro stato attuale più avanti in questo capitolo.

Dettagli su questo pacchetto si trovano nella Sezione 6.13.2, “Contenuti di Binutils.”