See the Elephant

1992生まれのプログラマが書くエンジニアブログ

zshでrvm useがこけた時の対処

zshを使用してrvm useを実行するとコケた.

どうやらRVMはbashをlogin shellと想定しているらしく, zshは一手間かける必要があった. 対処に時間がかかったのでメモ.
インストールしているrubyのバージョンは2.0.0-p598

$ rvm use 2.0.0

RVM is not a function, selecting rubies with 'rvm use ...' will not work.

You need to change your terminal emulator preferences to allow login shell.
Sometimes it is required to use `/bin/bash --login` as the command.
Please visit https://rvm.io/integration/gnome-terminal/ for an example.

まずはstack over flowを参考に.zshrc内でRVMのスクリプトファイルのパスを通した.

#RVMのスクリプトのパスを通す
##.zshrcの最後に記述すること##

# export PATH="$PATH:$HOME/.rvm/bin" 

15/2/23 追記
export PATH="$PATH:$HOME/.rvm/bin:$PATH" # Add RVM to PATH for scripting


#rvmをshell内で有効にする
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" 

terminalで.zshrcを再読み込み.

$source ~/.zshrc  
/Users/userhome/.rvm/scripts/cli:255: parse error near `-GF'

何故かsource .zshrcの時点でエラーが通らなくなってしまう.
色々調べた結果, 公式サイトに対処が乗っていた.

RVMの公式サイトによると RVM is not a function, selecting rubies with 'rvm use ...' will not work.が出たら次のコマンドを試してみろ. とのこと.

$ rvm alias create default 2.0.0
Creating alias default for ruby-2.0.0-p598....

$ rvm use 2.0.0
Using /Users/userhome/.rvm/gems/ruby-2.0.0-p598

できたっぽい.