WEBサービス創造記

WEBサービスを作ったり保守したりしてる人のメモブログです。

zshでRVMを使おうとすると「RVM is not a function, selecting rubies with ‘rvm use …’ will not work.」とか言われる。

   

具体的には下記のような感じ。

$ rvm gemset use hoge

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 a example.

.zshrcにパスの設定(`PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting`)もしてあるのになんでだろう。
ちなみにBashを使うと.bashrcに上記書式で書けば正常に動作する。

理由はよくわかりませんが、.zshrc内で下記のようにsourceで指定すれば動くようになりました。

export PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
source ~/.rvm/scripts/rvm

参考

 - シェル ,