Solaris10でgcc-4.4.0をインストールする

Lua5.1.4をSolaris10の素のままでビルドしようとすると警告が沢山でるのでgcc-4.4.0をインストールしてみます。ちなみに警告は「visibility attribute not supported in this configuration」といった感じのものでgcc4からサポートされたやつみたいです。staticな関数をライブラリの外に出す/出さないを指定できるgcc拡張のようです。

またgcc4.1以降はlibgmpとlibmpfrが必要との事なので、これらを事前にビルドします。

まずはlibgmpをwgetで取得してgtarで展開します。その後以下の手順でビルド。

cd gmp-4.2.4
./configure --prefix=/usr/local/gcc4 --build=i386-sun-solaris2.10
gmake
gmake check
gmake install

ちなみに、--buildオプションを指定しないとビルドに失敗しました。どうやら「core2-pc-solaris2.10」と認識されていたのが原因のようです。こちらのページを参考にさせていただきました。

次にlibmpfrをビルドします。こちらもwgetで取得してgtarで展開します。その後以下の手順でビルド。

cd mpfr-2.4.0
./configure --prefix=/usr/local/gcc4 --with-gmp=/usr/local/gcc4
gmake
gmake check
gmake install

これでgccをビルドする準備が整いました。
その前に、LD_LIBRARY_PATHに/usr/local/gcc4/libを入れておかないとlibgccのコンパイルでこけます。
gcc-core-4.4.0.tar.gzとgcc-g++-4.4.0.tar.gzを取得してgtarで展開します。

cd gcc-4.4.0

./configure \
--prefix=/usr/local/gcc4 \
--with-ar=/usr/ccs/bin/ar \
--with-as=/usr/ccs/bin/as \
--with-ld=/usr/ccs/bin/ld \
--enable-shared \
--enable-languages=c,c++ \
--with-gmp=/usr/local/gcc4 \
--with-mpfr=/usr/local/gcc4

gmake bootstrap
gmake install

一応確認。

/usr/local/gcc4/bin/gcc -v
Using built-in specs.
Target: i386-pc-solaris2.10
コンフィグオプション: ./configure --prefix=/usr/local/gcc4 --with-ar=/usr/ccs/bin/ar --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld --enable-shared --enable-languages=c,c++ --with-gmp=/usr/local/gcc4 --with-mpfr=/usr/local/gcc4
スレッドモデル: posix
gcc version 4.4.0 (GCC)

そして環境変数のPATHにも/usr/local/gcc4/binを入れます。 
Luaのビルドは別の記事で。

新しいサイトもよろしくお願いします!