本パッケージの詳細は 「Binutils の構成」を参照してください。
Binutils パッケージは、リンカーやアセンブラーなどのようにオブジェクトファイルを取り扱うツール類を提供します。
Binutils の tarball では、古い 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
configure オプションの意味
--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,sframe}.{a,la}
本パッケージの詳細は 「Binutils の構成」を参照してください。