CentOSにRuby2系をインストールした
ServerSpecを始めようとして、 ServerSpecにはRubyが必要なので、 Rubyのインストールからはじめました。
CentOS6系ではRuby2系でないとエラーが出てしまうので 今回はRuby2系のインストールをします。
まずはRubyがインストールをしているか確認します。
# ruby -v -bash: ruby: コマンドが見つかりません
rbenvを使用してRubyをインストールします。 今回は/usr/local/src/配下にRubyをインストールします。
# cd /usr/local/src/
rbenvはGithubから提供されているのでgitをインストールします。
# yum install git
gitでGithubからrbenvをチェックアウトします。
# git clone git://github.com/sstephenson/rbenv.git
次にruby-buildプラグインをrbenv/plugins/配下にインストールします。
# mkdir rbenv/plugins # cd rbenv/plugins/ # git clone git://github.com/sstephenson/ruby-build.git
/etc/profile に以下の3行を追加して、rbenv を初期化&実行するための環境設定を行います
~/.rbenv/binにrbenvコマンドが入っているので、そこにパスを通します。 ※zsh使ってる場合は~/.bash_profileの代わりに~/.zshenvにして下さい。
rbenv initコマンドを呼び出すようにします。実際は~/.rbenv/libexec/rbenv-initのシェルを呼び出しているようです。
# echo 'export RBENV_ROOT="/usr/local/src/rbenv"' >> ~/.bash_profile # echo 'export PATH="${RBENV_ROOT}/bin:${PATH}"' >> ~/.bash_profile # echo 'eval "$(rbenv init -)"' >> ~/.bash_profile # test -r ~/.bashrc && . ~/.bashrc
test -r ~/.bashrc && . ~/.bashrc
はbashrcが読み込まれなくなったら入れてみて下さい。
シェルを再起動して設定を反映させましょう。
# source ~/.bash_profile
パスが通ってることを確認します。
# echo $RBENV_ROOT /usr/local/src/rbenv # rbenv root /usr/local/src/rbenv
必要になるモジュールをyum でインストールします
# yum install gcc make openssl-devel libffi-devel
rbenv でインストールできる Ruby のバージョン一覧を確認します。
# rbenv install -l
お好きなバージョンをインストールしてください。
# rbenv install 2.3.1
OSによっては以下のような実行結果(エラー)が出ました。
BUILD FAILED (CentOS release 6.x (Final) using ruby-build xxxxxxxxxxx)
以下のコマンドを実行して解決できました。
yum install -y readline-devel
Rubyのインストールを確認
# rbenv global 2.3.1 # ruby -v ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
他のバージョンをインストールしても以下のコマンドでデフォルトバージョンを変更できます。
# rbenv global バージョン名