GCC-3.3.1 のインストール 第1段階

推定構築時間:           4.4 SBU
推定必要ディスクスペース:  300 MB

GCC の内容

GCC パッケージは C 及び C++ コンパイラなどを含む GNU コンパイラコレクションを収容しています。

インストールされるプログラム: c++, cc (link to gcc), cc1, cc1plus, collect2, cpp, g++, gcc, gccbug, 及び gcov

インストールされるライブラリ: libgcc.a, libgcc_eh.a, libgcc_s.so, libstdc++.[a,so] 及び libsupc++.a

GCC インストール依存性

GCC は以下のパッケージに依存します: Bash, Binutils, Coreutils, Diffutils, Findutils, Gawk, Gettext, Glibc, Grep, Make, Perl, Sed, Texinfo.

GCC のインストール

さしあたりは C++ コンパイラを必要としないので、GCC-core の tarball を解凍するだけにしておきます。

このパッケージはデフォルト最適化フラグ( -march と -mcpu オプションを含む)を変更するとおかしなふるまいをすると知られています。 ですから、たとえば CFLAGS や CXXFLAGS のような、デフォルトの最適化を書きかえるような何かの環境変数を定義したなら、GCC を構築する時に、その設定を解除するか、修正するようお勧めします。

GCC の文書は、ソースディレクトリとは別の構築専用ディレクトリでコンパイルするよう勧めています。

mkdir ../gcc-build
cd ../gcc-build

それでは コンパイルのために GCC を準備します。

../gcc-3.3.1/configure --prefix=/tools \
    --with-local-prefix=/tools \
    --disable-nls --enable-shared \
    --enable-languages=c

コンフィグオプションの意味

パッケージのコンパイルを続けます。

make BOOT_LDFLAGS="-static" bootstrap

make パラメータの意味

それではパッケージをインストールします。

make install

仕上げに /tools/bin/cc のシンボリックリンクを作成します。 多くのプログラムやスクリプトが gcc の代わりに cc を使うというのは、プログラムに一般性を持たせるということですから、すべての Unix システムで使えるということです。 すべての人が GNU C コンパイラをインストールしているわけではありません。 単に、cc を使っておくことで、それに対してシンボリックリンクさえ作れば、システム管理者がどの C コンパイラをインストールするかについては制約が無くなります。

ln -sf gcc /tools/bin/cc