Il pacchetto Binutils contiene un linker, un assemblatore e altri tool per manipolare file oggetto.
Verificare che i PTY funzionino correttamente nell'ambiente chroot. Controllare che le impostazioni siano corrette eseguendo un semplice test:
expect -c "spawn ls"
Se compare il seguente messaggio, l'ambiente chroot non è impostato per una corretta operatività corretta PTY:
The system has no more ptys. Ask your system administrator to create more.
Questo problema deve essere risolto prima di eseguire le suite di test per Binutils e GCC.
La documentazione di Binutils raccomanda di costruire Binutils fuori dalla directory dei sorgenti, in una directory di costruzione dedicata:
mkdir -v ../binutils-build cd ../binutils-build
Preparare Binutils per la compilazione:
../binutils-2.16.1/configure --prefix=/usr \ --enable-shared
Compilare il pacchetto:
make tooldir=/usr
Il significato del parametro di make:
Normalmente la tooldir (la directory dove alla fine verranno collocati gli eseguibili) è impostata a $(exec_prefix)/$(target_alias). Per esempio le macchine i686 la espanderanno in /usr/i686-pc-linux-gnu. Poiché questo è un sistema personalizzato, questa directory di destinazione specifica in /usr non è necessaria. $(exec_prefix)/$(target_alias) verrebbe utilizzata se il sistema fosse usato per il cross-compile (per esempio compilare un pacchetto su una macchina Intel che genera codice che può essere eseguito su macchine PowerPC).
La suite di test per Binutils in questa sezione è considerata critica. Non saltarla per nessuna ragione.
Testare i risultati:
make check
Installare il pacchetto:
make tooldir=/usr install
Installare il file header libiberty che è richiesto da alcuni pacchetti:
cp -v ../binutils-2.16.1/include/libiberty.h /usr/include