読者です 読者をやめる 読者になる 読者になる

さくら VPS 上に gcc4.8 をインストールする方法

C/C++ GCC

主旨

 GCC 4.8.1 *1さくらインターネット社の VPS *2 上の CentOS にインストールした際の自分用まとめ記事です.今回は CentOS 6.4 に GCC 4.8.1 をインストールします.GCC も 4.8.1 となり,C++11 のコア機能が全て実装されたようです.

 今回は VPS を借りてすぐの状態から gcc4.8.1 をインストールします.なお root のパスワード変更などは後回しを想定してます.必要に応じて各自で適宜設定してください.

マシン構成等

 今回のマシン構成などは以下の通り.

  • OS: CentOS 6.4 x86_64
  • インストールする GCCGCC 4.8.1
  • GCC のインストール先:/usr/local/bin 配下
  • //プラン:メモリ 1G の最安値(980円)コース

GCC に必要となるもの

参考:Installing GCC - GNU Project - Free Software Foundation (FSF)

  1. GMP 5.1.2
  1. MPFR Library 3.1.2
  1. MPC Library 1.0.1
  1. ISL Library 0.11.1 (バージョン指定)
  1. CLooG 0.18.0 (バージョン指定)
  1. glibc-devel.x86_64 と glibc-devel.i686

GCC 4.8 のインストール手順

1.OS をアップデートする
//root でログインする
//# yum clean all //404が表示されてアップデートできない場合入力
# yum update
# yum upgrade
# reboot //再起動させる
2. yum で必要なものをインストール
//root でログインする
# yum install glibc-devel.x86_64 glibc-devel.i686
# yum install tmux //あると便利
# yum install emacs //ないとしぬ (今回ビルド等に使用はしません)
3. 環境変数を設定
//環境変数を設定する
# export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
# export LD_RUN_PATH=/usr/local/lib:$LD_RUN_PATH
4. 共有ライブラリを設定
//あとで必要となる共有ライブラリを先に設定する
# vi /etc/ld.so.conf

//以下のように設定
include ld.so.conf.d/*.conf //元々存在する行
/usr/local/lib //新しく追記

# ldconfig //更新を反映する
5. GMP をインストール
# cd //ホームディレクトリに移動
# mkdir gmp; cd gmp //gmp の作業フォルダ作成
# wget ftp://ftp.gnu.org/gnu/gmp/gmp-5.1.2.tar.xz //gmp をダウンロード
# tar xvf gmp-5.1.2.tar.xz
# cd gmp-5.1.2
# mkdir build; cd build //作業フォルダの作成
# ../configure --enable-cxx //--enable-cxx を忘れない
# make -s -j 2 //2並列でビルドする
# make check -s -j 2//2並列でチェックする
# make install
6. MPFR をインストール
# cd //ホームディレクトリに移動
# mkdir mpfr; cd mpfr //mpfr の作業フォルダ作成
# wget http://www.mpfr.org/mpfr-current/mpfr-3.1.2.tar.gz //mpfr をダウンロード
# tar xvzf mpfr-3.1.2.tar.gz
# cd mpfr-3.1.2
# mkdir build; cd build //作業フォルダの作成
# ../configure
# make -s -j 2 //2並列でビルドする
# make check -s -j 2//2並列でチェックする
# make install
7. MPC をインストール
# cd //ホームディレクトリに移動
# mkdir mpc; cd mpc //mpc の作業フォルダ作成
# wget http://www.multiprecision.org/mpc/download/mpc-1.0.1.tar.gz  //mpc をダウンロード
# tar xvzf mpc-1.0.1.tar.gz
# cd mpc-1.0.1
# mkdir build; cd build //作業フォルダの作成
# ../configure
# make -s -j 2 //2並列でビルドする
# make check -s -j 2//2並列でチェックする
# make install
8. ISL をインストール
# cd //ホームディレクトリに移動
# mkdir isl; cd isl //isl の作業フォルダ作成
# wget ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.11.1.tar.bz2  //isl をダウンロード
# tar xvf isl-0.11.1.tar.bz2
# cd isl-0.11.1
# mkdir build; cd build //作業フォルダの作成
# ../configure
# make -s -j 2 //2並列でビルドする
# make check -s -j 2//2並列でチェックする
# make install
9. CLooG をインストール
# cd //ホームディレクトリに移動
# mkdir cloog; cd cloog //cloog の作業フォルダ作成
# wget ftp://gcc.gnu.org/pub/gcc/infrastructure/cloog-0.18.0.tar.gz  //CLooG をダウロード
# tar xvzf cloog-0.18.0.tar.gz
# cd cloog-0.18.0
# mkdir build; cd build //作業フォルダの作成
# ../configure
# make -s -j 2 //2並列でビルドする
# make check -s -j 2//2並列でチェックする
# make install
10. GCC 4.8.1 をインストールする

※ とても時間がかかるので注意

# tmux //作業途中で接続が切れてもよいようにする <= 途中で切れた場合:「tmux a」で復旧
//tmux を実行した場合
// - # export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
// - # export LD_RUN_PATH=/usr/local/lib:$LD_RUN_PATH
# cd
# mkdir gcc4.8; cd gcc4.8 //gcc の作業フォルダ作成
# wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.1/gcc-4.8.1.tar.gz 
# tar xvzf gcc-4.8.1.tar.gz
# cd gcc-4.8.1
# mkdir build; cd build //作業フォルダの作成
# ../configure --program-suffix=-4.8.1 //gcc の後ろに -4.8.1 をつけて「gcc-4.8.1」でビルド
# make -s -j 2 //時間かかるので注意
# make check -s -j 2
# make install

インストールできたか確認する

# g++-4.8.1 --version
gcc-4.8.1 (GCC) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

上記コマンドで GCC のバージョン情報が出力されれば問題ない.