18
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

rbenvのインストールと、バージョン指定

Last updated at Posted at 2015-02-18

rbenvはRubyのバージョンを管理してくれるので便利で、且つ一度設定すると、コマンドを打つ必要がなかったります。
おかげで、何か新しいことをやるたびに(サーバーを新しく構築したり、新しいRubyのバージョンを試したかったり)コマンドを調べなおしたりしてしまうので、まとめてみました。

環境

  • OS CentOS 6.5

インストール

  • root権限で行ってください
  • OS上の全ユーザがrbenvを使えるようになることを前提としています。
gitを使えるようにする
# yum install git
rbenvをインストールするパスを設定する
/etc/profile.d/rbenv.shを以下の内容で作成する。
rbenv.sh

#! /bin/bash
# rbenv用のパスを設定
export RBENV_ROOT="/usr/local/bin/rbenv"
        
設定したファイルを有効にする。
# source /etc/profile.d/rbenv.sh
rbenvをインストール
# git clone https://github.com/sstephenson/rbenv.git $RBENV_ROOT
rbenvのビルドモジュールをインストール
# git clone https://github.com/sstephenson/rbenv-build.git $RBENV_ROOT/plugins/ruby-build
パスを通す
/etc/profile.d/rbenv.shを以下の内容に修正する。
rbenv.sh

#! /bin/bash
# rbenv用のパスを設定
export RBENV_ROOT="/usr/local/bin/rbenv"
# パスを通す
export PATH=[コピー先]/bin:$PATH
# 初期設定を行う
eval "$(rbenv init -)"
        
設定したファイルを有効にする。
# source /etc/profile.d/rbenv.sh

rbenvを使ったRubyのインストール

  • インストールするRubyのバージョンに必要なパッケージは事前にyum等で入れておいてください
  • 古いバージョンのRubyを入れると、buildで失敗する場合があります。パッケージが足りないのか、原因等不明

インストールできるバージョンを調べる

# rbenv install --list 

この時、入れたいバージョンが無い場合があります。
rbenvでは入れることができるバージョンはローカルに保持しています。
最新のバージョンがインストールできるか確認するには、最新のビルドバージョンを取得する必要があります。

最新のインストールできるバージョンを取得する

# cd $RBENV_ROOT/plugins/ruby-build
# git pull

僕の開発環境では、OSの起動時に最新のバージョンを取得するように設定しています。

/etc/profile
・・・
bash -c "cd $RBENV_ROOT/plugins/ruby-build; git pull"

ですが、アプリケーションサーバーなど、特定のバージョンのRubyで動いている環境であれば、この設定は必要ないと思います。

Rubyのインストール

# rbenv install バージョン

Rubyのバージョン指定方法

OSレベルでのバージョン指定
# rbenv global [バージョン]
ディレクトリレベルでのバージョン指定
# rbenv local [バージョン]
上記コマンドを実行すると、実行フォルダに.ruby-versionというファイルが作成され、その中にRubyのバージョンが記述されています。 Railsのプロジェクトなどの場合、プロジェクトのルートフォルダにこのファイルを作成し、共有しておけば、プロジェクト毎のRubyのバージョンを共有できます。
シェルレベルでのバージョン指定
# rbenv shell [バージョン]
環境変数でのバージョン指定
# RBENV_VERSION=[バージョン]
Shellなどで、コマンド毎に実行するRubyのバージョンを変えたい場合に使います。
なお、rbenv shellと同じ挙動になります。
rbenv shellを使うと、この環境変数にバージョンが設定されます。)
なお、それぞれの優先順位ですが、 **シェルレベル > ディレクトリレベル > OSレベル** となります

設定したバージョンを消したい場合(何も設定していない状態にしたい場合)は、--unsetオプションを指定すると、解除できます。

Rubyのアンインストール

# rbenv uninstall バージョン

コマンド

インストールされているRubyのバージョン一覧
# rbenv versions
18
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?