rbenv による ruby のバージョン管理

Page content

[TOS]

rbenv-update を使って rbenv, ruby のバージョンアップ

  • .bashrc などの rc ファイルに以下を追加

      ### rbenv
      if [ -d ${HOME}/.rbenv ]; then
        export PATH=$HOME/.rbenv/bin:$PATH
        eval "$(rbenv init -)"
        . $HOME/.rbenv/completions/rbenv.zsh
      fi
    
  • (centos) まずは github から rbenv, ruby-build を clone する: (macはhomebrewから)

    git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
    git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
    
  • rbenv コマンドが動くことを確認

    source ~/.bashrc
    rbenv --version
    
  • rbenv-update をインストール (mac, centos)

    [ -z "$RBENV_ROOT" ] && export RBENV_ROOT="$HOME/.rbenv"
    mkdir -p "$RBENV_ROOT/plugins"
    git clone https://github.com/rkh/rbenv-update.git "$RBENV_ROOT/plugins/rbenv-update"
    
  • rbenv-update をインストールしたので rbenv update で rbenv をアップデートします。

      $ rbenv update
      updating rbenv
       |  From https://github.com/sstephenson/rbenv
       |  13a474c..1a7f49d  master     -> origin/master
      略
    
  • rbenvのバージョンを確認します。

    $ rbenv --version
    rbenv 0.4.0
    
  • rbenvがアップデートされてバージョンがあがりました。

最新のrbenvで最新のrubyをインストール

  • (centos) ruby入れようとしたら怒られたので先に入れるパッケージがありました。
# yum install -y readline-devel
  • インストール可能な ruby のバージョンの確認は以下のコマンドか webでどぞ

    $ rbenv install -l
    
  • 20151205時点ではruby 2.3.1がlatest stable versionでした。

    $ rbenv install -v 2.3.1
    
  • インストールされているRubyのバージョンを確認します。

      $ rbenv versions
        system
      * 2.1.2 (set by /usr/local/rbenv/version)
        2.2.3
        2.3.1
    

ちゃんと2.3.1が入っています。

  • rehashする

    $ rbenv rehash
    
  • 普段使うデフォルトのrubyに指定する。

    $ rbenv global 2.3.1
    
  • version確認

    $ ruby -v
    

ディレクトリごとにバージョンを変える

  • rbenv local xxxx です。
    rbenv local 2.5.1
    
  • すると .ruby-version というファイルができます
    $ cat .ruby-version
    2.5.1
    

これでディレクトリごとのバージョン切り替えができるようだよ。

rubygems のアップデート

  • gem update だよ
    $ gem update --system
    $ gem -v
    2.6.6
    

参考: https://qiita.com/muran001/items/a7bfeabe15f9900583a9