本パッケージの詳細は 6.13.2.「Binutils の構成」を参照してください。
Binutils パッケージは、リンカーやアセンブラーなどのようにオブジェクトファイルを取り扱うツール類を提供します。
ビルドのためのディレクトリを再び生成します。
mkdir -v build cd build
Binutils をコンパイルするための準備をします。
CC=$LFS_TGT-gcc                \
AR=$LFS_TGT-ar                 \
RANLIB=$LFS_TGT-ranlib         \
../configure                   \
    --prefix=/tools            \
    --disable-nls              \
    --disable-werror           \
    --with-lib-path=/tools/lib \
    --with-sysroot
        configure オプションの意味:
CC=$LFS_TGT-gcc
              AR=$LFS_TGT-ar RANLIB=$LFS_TGT-ranlib
            Binutils をネイティブにビルドすることが目的なので、ホストシステムに存在しているクロスコンパイラーや関連ツールは使わず、ビルドしているシステム内のものを用いるように指定します。
--with-lib-path=/tools/lib
            
                configure スクリプトに対して Binutils のコンパイル中でのライブラリパスを指定します。 リンカーに対して
                /tools/lib ディレクトリを指定するものです。
                こうすることでリンカーがホスト上のライブラリを検索しないようにします。
              
--with-sysroot
            sysroot 機能は、特定の共有オブジェクトを必要とする他の共有オブジェクトを、リンカーが見つけ出せるようにする機能です。 その場合には明示的にリンカーのコマンドラインにて、共有オブジェクトを指定する必要があります。 コマンドラインでのその指定がない場合には、特定のホストにてパッケージビルドに失敗するものが出てきます。
パッケージをコンパイルします。
make
パッケージをインストールします。
make install
次章で行う「再調整」の作業に向けてリンカーを準備します。
make -C ld clean make -C ld LIB_PATH=/usr/lib:/lib cp -v ld/ld-new /tools/bin
make パラメーターの意味:
-C ld
              clean
            
                サブディレクトリ ld
                にコンパイル生成されたプログラムをすべて削除します。
              
-C ld
              LIB_PATH=/usr/lib:/lib
            
                サブディレクトリ ld
                の中に生成されるべきプログラムを再生成します。 Makefile ファイル内の変数 LIB_PATH
                をコマンドラインから与えることで、一時的なツール類の設定を上書き指定し、適切なパスを指示します。
                この変数の設定はリンカーに対するデフォルトの検索パスを指定するものであり、次章に向けた準備となります。
              
本パッケージの詳細は 6.13.2.「Binutils の構成」を参照してください。