LFS構築記4日目〜暫定環境の調整

user-pic
0

LFS Book: 5.7.Adjusting the Toolchain

大晦日の本日はLFS構築記4日目として暫定環境の調整から作業を開始します。
前回Glibcのインストールが終ったので、以降の作業でインストールするパッケージはこの暫定環境用にインストールしたGlibcにリンクするように調整します。また、GCCについてもスペックファイルを編集します。

先ず、以前残しておいたBinutilsのビルド用ディレクトリに移動し、リンカのみをインストールします。実行コマンドは以下の通りです。

$ cd $LFS/sources/binutils-build
$ make -C ld install

この時点でBinutilsのソースディレクトリとビルド用ディレクトリは削除して構いません。Binutilsはこの後のLFSの本システム構築時にもビルドするので、後々の混乱を避けるためにも削除しておくことをお奨めします。

次に、スペックファイルを編集します。実行コマンドは以下の通りです。最後のコマンドはホスト側のインクルードファイルがGCC固有のインクルードファイルへのパスを見つけてしまう可能性があるため、余計なヘッダファイルを削除しています。

$ SPECFILE=`gcc --print-file specs` &&
>sed 's@ /lib/ld-linux.so.2@ /tools/lib/ld-linux.so.2@g' \
>$SPECFILE > tempspecfile &&
>mv -f tempspecfile $SPECFILE &&
>unset SPECFILE
$ rm -vf /tools/lib/gcc/*/*/include/{pthread.h,bits/sigthread.h}

最後に簡単なダミープログラムを使用してここまでの暫定環境が正しく動作しているか確認します。テスト方法は以下の通りです。

$ echo 'main(){}' > dummy.c
$ cc dummy.c
$ readelf -l a.out | grep ': /tools'
[Requesting program interpreter: /tools/lib/ld-linux.so.2]

上記の例の様に、ダイナミックリンカld-linux.so.2のパスが/tools/libであることを確認します。

トラックバック(0)

トラックバックURL: http://www.skucky.com/cgi-bin/mt/mt-tb.cgi/12

コメントする

このブログ記事について

このページは、webmasterが2006年12月31日 13:13に書いたブログ記事です。

ひとつ前のブログ記事は「LFS構築記3日目〜ヘッダファイル、Glibcのインストール」です。

次のブログ記事は「LFS構築記4日目〜その他パッケージのインストール」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。