CentOS / RHEL(RedHat Enterprise Linux) に Ruby 2.x をインストールする手順を紹介します。
Ruby のバージョンにこだわらないのであれば、コマンドラインから
以下、どうしても Ruby 2.x を使いたい、という人のための導入方法の紹介です。CentOS で Ruby 2.x を導入する方法はいくつかあって、ソースコードからビルドするという一般的な手順もあるのですが、ここでは rbenv を使った方法を紹介します。
rbenv は複数バージョンの Ruby を同一コンピュータ上で管理する GitHub 提供のツールです。2.x に限らず 1.x も含めた複数バージョンの Ruby を同じマシンにインストールし、実際に利用するバージョンを管理しながら使えるようにできます。このツールを使って Ruby の最新版をインストールしてみます。
まず、rbenv は GitHub から提供されていることもあり、git の入手が必須です。まだ導入できていない場合はこのコマンドで git を導入してください:
そして git を使って GitHub から rbenv をチェックアウトします。今回は /opt/ 以下に Ruby をインストールするという前提にします:
続けて ruby-build プラグインを rbenv の plugins フォルダにインストールします:
最後に /etc/profile に以下の3行を追加して、rbenv を初期化&実行するための環境設定を行います:
ここまでの作業で rbenv の導入が完了しました。再ログインするとか、シェルを再起動するなりして最後の環境設定までが反映された状態にしてください。
更に、この後の作業で必要になるモジュールを(エラーが出る前に)yum でインストールしておきます:
ここまでの準備ができていれば Ruby のインストール作業に移れます。まずは rbenv でインストールできる Ruby のバージョン一覧を確認してみます:
JRuby とかもリストされてますが、今回は普通(?)の Ruby だけで考えます。バージョン番号に rc とか dev とか preview とか付いているのは開発中のものだったりします。この一覧を見る限り安定版では 2.2.0 が最新のようなので、これをインストールしてみましょう(結構時間かかります):
そして、この Ruby 2.2.0 をシステムで使うデフォルトバージョンとして設定した上で動作確認します:
Ruby 2.2.0 が導入できました!
この後で別のバージョンが必要になった場合は同様に
でインストールし、
でデフォルトバージョンを変更できます。
Ruby のバージョンにこだわらないのであれば、コマンドラインから
と入力するだけでインストールできます。ただ 2015/Feb/18 現在、この方法でインストールできる Ruby のバージョンは 1.8.7 でした。このバージョンで特に支障がなければこの方法が一番簡単だと思っています。# yum install ruby
以下、どうしても Ruby 2.x を使いたい、という人のための導入方法の紹介です。CentOS で Ruby 2.x を導入する方法はいくつかあって、ソースコードからビルドするという一般的な手順もあるのですが、ここでは rbenv を使った方法を紹介します。
rbenv は複数バージョンの Ruby を同一コンピュータ上で管理する GitHub 提供のツールです。2.x に限らず 1.x も含めた複数バージョンの Ruby を同じマシンにインストールし、実際に利用するバージョンを管理しながら使えるようにできます。このツールを使って Ruby の最新版をインストールしてみます。
まず、rbenv は GitHub から提供されていることもあり、git の入手が必須です。まだ導入できていない場合はこのコマンドで git を導入してください:
# yum install git
そして git を使って GitHub から rbenv をチェックアウトします。今回は /opt/ 以下に Ruby をインストールするという前提にします:
# cd /opt # git clone git://github.com/sstephenson/rbenv.git
続けて ruby-build プラグインを rbenv の plugins フォルダにインストールします:
# mkdir /opt/rbenv/plugins # cd /opt/rbenv/plugins # git clone git://github.com/sstephenson/ruby-build.git
最後に /etc/profile に以下の3行を追加して、rbenv を初期化&実行するための環境設定を行います:
export RBENV_ROOT="/opt/rbenv" export PATH="${RBENV_ROOT}/bin:${PATH}" eval "$(rbenv init -)"
ここまでの作業で rbenv の導入が完了しました。再ログインするとか、シェルを再起動するなりして最後の環境設定までが反映された状態にしてください。
更に、この後の作業で必要になるモジュールを(エラーが出る前に)yum でインストールしておきます:
# yum install gcc make openssl-devel libffi-devel
ここまでの準備ができていれば Ruby のインストール作業に移れます。まずは rbenv でインストールできる Ruby のバージョン一覧を確認してみます:
# rbenv install -l
Available versions:
1.8.6-p383
1.8.6-p420
1.8.7-p249
1.8.7-p302
1.8.7-p334
1.8.7-p352
1.8.7-p357
1.8.7-p358
:
:
2.1.5
2.2.0-dev
2.2.0-preview1
2.2.0-preview2
2.2.0-rc1
2.2.0
2.3.0-dev
jruby-1.5.6
:
:
ree-1.8.7-2012.02
topaz-dev
JRuby とかもリストされてますが、今回は普通(?)の Ruby だけで考えます。バージョン番号に rc とか dev とか preview とか付いているのは開発中のものだったりします。この一覧を見る限り安定版では 2.2.0 が最新のようなので、これをインストールしてみましょう(結構時間かかります):
# rbenv install 2.2.0 Downloading ruby-2.2.0.tar.gz... : :
そして、この Ruby 2.2.0 をシステムで使うデフォルトバージョンとして設定した上で動作確認します:
# rbenv global 2.2.0 # ruby -v ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]
Ruby 2.2.0 が導入できました!
この後で別のバージョンが必要になった場合は同様に
# rbenv install X.X.X
でインストールし、
# rbenv global X.X.X
でデフォルトバージョンを変更できます。
コメント
コメント一覧 (5)
ありがとうございました。
便利な記事、ありがとうございます。
【追記お願い】
現時点の最新版、2.3.1 を入れようとしてみたところ、(# rbenv install 2.3.1)
"Try running `yum install -y readline-devel` to fetch missing dependencies."
とか、足りないライブラリがあった場合にはエラーログに出ました。
メッセージに従ってライブラリを追加(yum install -y readline-devel)して再実行すれば、
"]# rbenv install 2.3.1
Downloading ruby-2.3.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.bz2
Installing ruby-2.3.1...
Installed ruby-2.3.1 to /opt/rbenv/versions/2.3.1
# rbenv global 2.3.1
# ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
"
というようにインストールできる。
と追記しておいてくれると、不慣れな人には有難いかと思います。