Les détails sur ce paquet sont disponibles dans Section 8.18.2, « Contenu de Binutils. »
Le paquet Binutils contient un éditeur de liens, un assembleur et d'autres outils permettant de gérer des fichiers objet.
Binutils contient une copie obsolète de libtool dans l'archive. Elle ne prend pas en charge sysroot, donc les binaires produits seront liés aux bibliothèques de l'hôte par erreur. Contournez ce problème :
sed '6009s/$add_dir//' -i ltmain.sh
Créez de nouveau un répertoire de construction séparé :
mkdir -v build cd build
Préparez la compilaton de Binutils :
../configure \ --prefix=/usr \ --build=$(../config.guess) \ --host=$LFS_TGT \ --disable-nls \ --enable-shared \ --enable-gprofng=no \ --disable-werror \ --enable-64-bit-bfd
Voici la signification des nouvelles options de configure :
--enable-shared
Construit libbfd
en tant que
bibliothèque partagée.
--enable-64-bit-bfd
Active la prise en charge du 64 bits (sur les hôtes avec des tailles de mots plus petites). Cela n'est peut-être pas nécessaire sur les systèmes 64 bits, mais ça ne fait pas de mal.
Compilez le paquet :
make
Installez le paquet :
make DESTDIR=$LFS install
Supprimez les fichiers d'archive libtool car ils sont dangereux pour la compilation croisée et supprimez des bibliothèques statiques inutiles :
rm -v $LFS/usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes,sframe}.{a,la}
Les détails sur ce paquet sont disponibles dans Section 8.18.2, « Contenu de Binutils. »