Vine Linux に gcc4 をインストールする

gcc は GNU Compiler Collections の略で、GNU から出ている フリーのコンパイラのセットです。VineLinux6の標準のgccは gcc-4.4.5ですが(2016年1月現在)、もうすぐ出るVineLinux7では 標準のgccはgcc-4.8.*になるようです。ということで、 /usr/localにgcc-4.9.3をインストールしてみました。ほんのちょっと 変更する必要がありました。

【準備: 最新の gmp, mpfr, mpc をインストール】
gcc4 を"make bootstrap"するためには、gmp, mpfr, mpc が必要です。 まず、

    https://gmplib.orgから gmp-6.1.0 を、
    http://www.mpfr.org/から mpfr-3.1.3.tar.gz とパッチmpfr.allpatches を、
    http://www.multiprecision.org/ からmpc-1.0.3を、
ダウンロードし、適当なディレクトリにおきます。つぎに、
    % echo $LD_LIBRARY_PATH
として、環境変数 LD_LIBRARY_PATH の値を確認しておきます。
    /usr/local/lib64:/usr/local/lib:/usr/lib64:/usr/lib:/usr/X11R6/lib
のように /usr/local/lib64 が /usr/lib64 より前にあることを確認します (VineLinux6 x86_64の場合)。 そして、以下のようにして、gmp, mpfr, mpc をインストールします。
    % tar --lzip -xf gmp-6.1.0.tar.lz  (lzipをインストールする必要がある)
    % cd gmp-6.1.0
    % ./configure
    % make
    % make check > check.log
     (すべてのテストにパスしているのを確認する。)
    # make install
    % cd ..
    % tar zxf mpfr-3.1.3.tar.gz
    % cd mpfr-3.1.3
    % patch -N -Z -p1 < ../mpfr.allpatches
    % ./configure --with-gmp=/usr/local
    % make
    % make check > check.log
     (すべてのテストにパスしているのを確認する。)
    # make install
    % cd ..
    % tar zxf mpc-1.0.3.tar.gz
    % cd mpc-1.0.3
    % ./configure --with-gmp=/usr/local --with-mpfr=/usr/local
    % make
    % make check > check.log
     (すべてのテストにパスしているのを確認する。)
    # make install

【ldconfig】
次に /etc/ld.so.confを編集します。

    % sudo vi /etc/ld.so.conf
    % cat /etc/ld.so.conf
    include ld.so.conf.d/*.conf
    /usr/lib64/sane
    /usr/local/lib      <== この行を追加
    % sudo ldconfig
以上の作業をしないと、"make install"のときにjavaのライブラリがインストー ルされませんでした。

【gcc4 の make bootstrap】
あとは、gcc-4.9.3.tar.gz を近くのサイトからダウンロードし、 適当なディレクトリに起きます。そして、

    % tar zxf gcc-4.9.3.tar.gz
    % mkdir obj-gcc
    % cd obj-gcc
    % ../gcc-4.9.3/configure --enable-languages=c,c++,fortran,java \
                             --with-gmp=/usr/local \
                             --with-mpfr=/usr/local \
                             --with-mpc=/usr/local
    % make bootstrap
    # make install
としたところ、gcc-4.9.3 がインストールできました。 しかし、インストールの途中で
ldconfig: /usr/local/lib/../lib64/libstdc++.so.6.0.16-gdb.py is not an ELF file - it has the wrong magic bytes at the start.
ldconfig: /usr/local/lib/../lib64/libstdc++.so.6.0.20-gdb.py is not an ELF file - it has the wrong magic bytes at the start.
ldconfig: /usr/local/lib/../lib64/libstdc++.so.6.0.17-gdb.py is not an ELF file - it has the wrong magic bytes at the start.
というメッセージがでます。気になりますが、今のところ特に害はないように見 えます。

(2016年1月5日)

【注意:以下の記述は古いです】

gcc は GNU Compiler Collections の略で、GNU から出ている フリーのコンパイラのセットです。VineLinux6の標準のgccは gcc-4.4.5ですが(2011年8月現在)、/usr/localに

   gmp-5.0.2 + (mpfr-3.0.1+patches) + mpc-0.9 + gcc-4.5.3
をインストールしてみました。gcc-4.5からmpcが必要になったようです。

【準備: 最新の gmp, mpfr, mpc をインストール】
gcc4 を"make bootstrap"するためには、gmp, mpfr, mpc が必要です。 まず、

    http://www.gnu.org/software/gmpから gmp-5.0.2 を、
    http://www.mpfr.org/から mpfr-3.0.1.tar.gz とパッチmpfr.patches を、
    http://www.multiprecision.org/ からmpc-0.9を、
ダウンロードし、適当なディレクトリにおきます。つぎに、
    % echo $LD_LIBRARY_PATH
として、環境変数 LD_LIBRARY_PATH の値を確認しておきます。
    /usr/local/lib64:/usr/local/lib:/usr/lib64:/usr/lib:/usr/X11R6/lib
のように /usr/local/lib64 が /usr/lib64 より前にあることを確認します (VineLinux6 x86_64の場合)。 そして、以下のようにして、gmp, mpfr, mpc をインストールします。
    % tar zxf gmp-5.0.2.tar.gz
    % cd gmp-5.0.2
    % ./configure
    % make
    % make check > check.log
     (すべてのテストにパスしているのを確認する。)
    # make install
    % cd ..
    % tar zxf mpfr-3.0.1.tar.gz
    % cd mpfr-3.0.1
    % patch -N -Z -p1 < ../mpfr.patches
    % ./configure --with-gmp=/usr/local
    % make
    % make check > check.log
     (すべてのテストにパスしているのを確認する。)
    # make install
    % cd ..
    % tar zxf mpc-0.9.tar.gz
    % cd mpc-0.9
    % ./configure --with-gmp=/usr/local --with-mpfr=/usr/local
    % make
    % make check > check.log
     (すべてのテストにパスしているのを確認する。)
    # make install
次に、以下のようにして
   # apt-get update
   # apt-get install compat32-glibc-devel.32bit
compat32-glibc-devel.32bitをインストールしておきます。

【gcc4 の make bootstrap】
あとは、gcc-4.5.3.tar.gz を近くのサイトからダウンロードし、 適当なディレクトリに起きます。そして、

    % tar zxf gcc-4.5.3.tar.gz
    % mkdir obj-gcc
    % cd obj-gcc
    % ../gcc-4.5.3/configure --enable-languages=c,c++,fortran \
                             --with-gmp=/usr/local \
                             --with-mpfr=/usr/local \
                             --with-mpc=/usr/local
    % make bootstrap
    # make install
としたところ、gcc-4.5.3 がインストールできました。

(2011年8月22日)

【バージョンアップ】
Vine Linux 6.1 (x86_64) 上で gmp-5.0.5、mpfr-3.1.1、mpc-1.0、 gcc-4.5.4 を make してみました。上記の通りにして 全く問題ありませんでした。

(2012年8月7日)

【バージョンアップ】
Vine Linux 6.2 (x86_64) 上で gmp-5.1.3、mpfr-3.1.2、mpc-1.0.1、 gcc-4.6.4 を make してみました。上記の通りにして 全く問題ありませんでした。

(2013年12月11日)

【バージョンアップ】
Vine Linux 6.2 (x86_64) 上で gmp-6.0.0a、mpfr-3.1.2、mpc-1.0.2、 gcc-4.7.4 を make してみました。上記の通りにして 全く問題ありませんでした。

(2015年2月19日)

このページの古いバージョン
ホーム 一つ上