Ruby

ruby2.x.xのインストール方法

More than 1 year has passed since last update.

こんにちは
今回は、CentOS6 についての Ruby 2.x.x系についてのインストール方法について説明したいと思います。

私はよくサクラインターネットのVPSサーバーを借りるのですが、
そこのデフォルトのOSがCentOS6なのです。
それで、Ruby2.x.xについてインストールしようと思った時、
yumリポジトリのあったRubyのバージョンは2016/2/5現在、version:1.8.7でした。

少し、時代遅れなので、Ruby2系についてのインストール方法についてまとめます。

インストールには rbenvを使いたいと思います。
rbenv は Ruby を同一コンピュータ上で管理する GitHub 提供のツールです。2.x に限らず 1.x も含めた複数バージョンの Ruby を同じマシンにインストールし、実際に利用するバージョンを管理しながら使えるようにできます。

ちなみに、あるサイトを大いに参考にしてます。
本家が見たい方は、下記のURLを参照ください。

それでは、始めます。

install

まず、rbenvは GitHub から提供されていることもあり、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の導入は完了です。
順調にいけば、ここまでの所要時間は5分です。

では、ここからRubyのインストールに入ります。

次に、rubyのインストール時に必要になるパッケージをあらかじめインストールしておきます。

yum install gcc make openssl-devel libffi-devel readline-devel

rbenv install -l でインストールできるrubyの一覧を見ることができます。

[root@xx-000-00000 bin]# rbenv install -l
Available versions:
  1.8.6-p383
  1.8.6-p420
  ...

  2.3.0-preview2
  2.3.0
  2.4.0-dev
  ...

  jruby-1.5.6
  jruby-1.6.3

今回は、最新の安定版は2.3.0みたいなので、これをinstallします。

[root@xx-000-00000 bin]# rbenv install 2.3.0
Downloading ruby-2.3.0.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.0.tar.bz2
Installing ruby-2.3.0...
Installed ruby-2.3.0 to /opt/rbenv/versions/2.3.0

これで、ruby2.x.x系の導入は終了です。


補足

ちなみに、今回はrubyのinstallに必要なパッケージを事前に導入しました。
私は必要なパッケージを入れないままrbenv install 2.3.0を実行したため、こんなエラーが出ました。

[root@xx-000-00000 bin]# rbenv install 2.3.0
Downloading ruby-2.3.0.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.0.tar.bz2
Installing ruby-2.3.0...

BUILD FAILED (CentOS release 6.7 (Final) using ruby-build 20160130-6-g9e57fb0)

Inspect or clean up the working tree at /tmp/ruby-build.20160205150825.24936
Results logged to /tmp/ruby-build.20160205150825.24936.log

Last 10 log lines:
installing rdoc:              /opt/rbenv/versions/2.3.0/share/ri/2.3.0/system
installing capi-docs:         /opt/rbenv/versions/2.3.0/share/doc/ruby
The Ruby readline extension was not compiled.
ERROR: Ruby install aborted due to missing extensions
Try running `yum install -y readline-devel` to fetch missing dependencies.

Configure options used:
  --prefix=/opt/rbenv/versions/2.3.0
  LDFLAGS=-L/opt/rbenv/versions/2.3.0/lib
  CPPFLAGS=-I/opt/rbenv/versions/2.3.0/include

もし、こんなのが出たら

yum install -y readline-devel

をしてあげてください。

参考サイト

http://dotnsf.blog.jp/archives/1020034700.html