本パッケージの詳細は 6.12.2. 「Binutils の構成」 を参照してください。
Binutils パッケージは、リンカやアセンブラなどのようにオブジェクトファイルを取り扱うツール類を提供します。
ビルドのためのディレクトリを再び生成します。
mkdir -v ../binutils-build cd ../binutils-build
Binutils をコンパイルするための準備をします。
CC="$LFS_TGT-gcc -B/tools/lib/" \ AR=$LFS_TGT-ar RANLIB=$LFS_TGT-ranlib \ ../binutils-2.20/configure --prefix=/tools \ --disable-nls --with-lib-path=/tools/lib
configure オプションの意味:
CC="$LFS_TGT-gcc
-B/tools/lib/" AR=$LFS_TGT-ar
RANLIB=$LFS_TGT-ranlib
Binutils をネイティブにビルドすることが目的なので、ホストシステムに存在しているクロスコンパイラや関連ツールは使わず、ビルドしているシステム内のものを用いるように指定します。
--with-lib-path=/tools/lib
configure スクリプトに対して Binutils のコンパイル中でのライブラリパスを指定します。 リンカに対して
/tools/lib
ディレクトリを指定するものです。
こうすることでリンカがホスト上のライブラリを検索しないようにします。
パッケージをコンパイルします。
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.12.2. 「Binutils の構成」 を参照してください。