LFS Book: 5.11.GCC-3.4.3-Pass2
新しいライブラリを使用してGCCを再コンパイルします。その前に、ここまでの環境を確認するため、簡単なテストコマンドを実行します。
$ expect -c "spawn ls"
spawn ls
上記の通り、「spawn ls」と表示されれば問題ありません。次の作業に進んでOKです。
GCCの再コンパイルでは、ソースを再度展開し、必要なパッチも当てるので、一発目にコンパイルした時のソースディレクトリとビルド用ディレクトリが残っている場合は、削除します。以上を前提として、実行コマンドは下記の通りです。
$ cd $LFS/sources/
$ tar jxvf gcc-3.4.3.tar.bz2
$ cd gcc-3.4.3
$ patch -Np1 -i ../gcc-3.4.3-no_fixincludes-1.patch
$ patch -Np1 -i ../gcc-3.4.3-specs-2.patch
$ mkdir -v ../gcc-build
$ cd ../gcc-build
$ ../gcc-3.4.3/configure \
>--prefix=/tools \
>--libexecdir=/tools/lib \
>--with-local-prefix=/tools \
>--enable-clocale=gnu \
>--enable-shared \
>--enable-threads=posix \
>--enable-__cxa_atexit \
>--enable-languages=c,c++ \
>--disable-libstdcxx-pch
$ make
$ make -k check
$ ../gcc-3.4.3/contrib/test_summary | grep -A7 Summ
$ make install
なお、makeとmake- k checkはかなりの時間がかかります。make -k checkが終ったら、一応テスト結果を確認します。LFS Bookによると、テスト結果として避けることができない、いくつかの予期していない失敗もあり、下記のリンク先と比較してそれほど乖離が無ければ次に進んで構わないとあります。
http://www.linuxfromscratch.org/lfs/build-logs/6.1.1/chapter5/gcc-3.4.3
小生の場合、gccのSummaryでunexpected failuresが39個もあったのが気になりましたが、どうすることもできないので、そのまんまインストールまで強行しました。
なお、gccのビルドディレクトリ、ソースディレクトリはこの時点で削除しておきます。
コメントする