Подробная информация об этом пакете находится в Раздел 8.18.2, «Содержимое пакета Binutils.»
Пакет Binutils содержит компоновщик, ассемблер и другие инструменты для работы с объектными файлами.
Binutils поставляет устаревшую версию libtool в архиве. В нем отсутствует поддержка sysroot, поэтому созданные двоичные файлы будут ошибочно связаны с библиотеками из основного дистрибутива. Решение этой проблемы:
sed '6009s/$add_dir//' -i ltmain.sh
Создайте отдельный каталог для сборки:
mkdir -v build cd build
Подготовьте Binutils к компиляции:
../configure \ --prefix=/usr \ --build=$(../config.guess) \ --host=$LFS_TGT \ --disable-nls \ --enable-shared \ --enable-gprofng=no \ --disable-werror \ --enable-64-bit-bfd
Значение новых параметров настройки:
--enable-shared
Собирает libbfd
как разделяемую
библиотеку
--enable-64-bit-bfd
Включает 64-разрядную поддержку (на хостах с более узким размером слов). Может и не понадобиться в 64-разрядных системах, но вреда от этого не будет.
Скомпилируйте пакет:
make
Установите пакет:
make DESTDIR=$LFS install
Удалите архивные файлы libtool, поскольку они потенциально опасны при кросс-компиляции, также удалите ненужные статические библиотеки
rm -v $LFS/usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes}.{a,la}
Подробная информация об этом пакете находится в Раздел 8.18.2, «Содержимое пакета Binutils.»