Edited at

rbenvの役割

前にバージョンの問題でエラーが出た時に調べたメモ

参考記事(ザリガニが見ていた)

参考記事(rails環境構築を分かりやすく解説)


rbenvとは

rbenv lets you easily switch between multiple versions of Ruby. It's simple, unobtrusive, and follows the UNIX tradition of single-purpose tools that do one thing well.

(rbenvを使用すると、複数のバージョンのRubyを簡単に切り替えることができます。シンプルで邪魔にならず、UNIXの伝統を継承している。)


役割

~/.rbenv/以下で、インストールした様々なRubyバージョンを管理し、状況に応じて必要になるRubyのバージョンを切り替えて提供してくれる。


構成

~/.rbenv/ (ルートフォルダ )

~/.rbenv/shims/ (rubyやgemがインストールしてくれるコマンドのラッパーを保存するフォルダ)

~/.rbenv/version (グローバルに設定しているRubyバージョンを記録するファイル)

~/.rbenv/versions/ (その他のインストールした各種Rubyバージョンをインストールするフォルダ)

* 実際の実行コマンド: rake,gem,railsなど 

~/.rbenv/versions/2.4.0//bin

* 標準のライブラリや、gemコマンドでインストールしたライブラリなど
~/.rbenv/versions/2.4.0/lib

* gemでインストールしたバージョン全てを見たい時は、
~/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems 以下で確認できる

* マニュアルなど
~/.rbenv/versions/2.4.0/share

まとめると、

・上記フォルダ構造の中に、標準ライブラリやgemで追加インストールしたライブラリ、実行コマンドなどがすべて保持されている。

・OS内部に散らばらず、バージョンごとに一つのルートフォルダにまとめられる。


インストールと各種設定

* インストール

$ brew install rbenv ruby-build

# 初期化
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

* 上記の設定を有効にする
$ source ~/.bash_profile

# 必要なrubyバージョン一覧をみる
$ rbenv install -l

* 必要なrubyバージョンをインストール
$ rbenv install 2.4.0

# リハッシュする
$ rbenv rehash

* グローバル(デフォルトと思ってもらったらいいです)で使うバージョンを指定
$ rbenv global 2.4.0

* インストールできたか確認
$ ruby -v