20

私はコマンドラインの専門家ではないので、自分が何をしているのかほとんど知りません。

RVM と oh-my-zsh をうまく連携させることができません。投稿されたいくつかの異なるソリューションを試してみましたが、いくつかはSOに掲載されていますが、問題を解決するものは何も見つかりませんでした。

最初は、他の誰かが私のマシンに RVM をセットアップしました。後で oh-my-zsh を自分でセットアップしましたが、セットアップに苦労したことを覚えています。

私の.zhsrcファイルは、これらの2行を除いて完全にデフォルトです

export PATH=$HOME/bin:/usr/local/bin:/usr/local/rvm/bin:$PATH

#pretty sure this line does nothing, although I've seen this fix around
# several places. I noticed that I don't seem to have an .rvm file in my 
# home directory which would be an issue, but I have no idea how to 
# go about correcting this.
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" 

/usr/local/rvmzsh がそれなしで返されるので、Path ディレクティブにを追加しましたzsh: rvm command not foundrvm useそれ以外の場合、次のエラーをスローする例外を除いて、ほとんどの rvm コマンドが機能します。

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.

RVM の推奨に従って、iTerm2 のプロファイルのプロファイル設定が「ログイン シェル」に設定されていることを確認しました。

iTerm2 設定 - ログインシェル

これらの設定を「コマンド」オプションに変更し/bin/bash/ --login、コマンドとして推奨されるものを使用しようとしましたが、これが発生すると zsh が機能しなくなったようです。コマンドを変更して/bin/zsh/ --loginzshが再び機能するようにしますが、実行しようとすると「RVMは関数ではありません」というエラーが引き続き表示されるため、問題は解決しませんrvm use

RVM のデフォルトの ruby​​ は 2.0.0 に設定されています。ホーム フォルダーで実行ruby -vし、デフォルト バージョンを示す ruby​​ バージョンの出力を取得できます。

Rails プロジェクトで作業している場合、Gemfile でデフォルトの ruby​​ 2.0.0 が指定されている場合は、すべての rails コマンドを実行できます。ただし、別のバージョンを使用するプロジェクトでは、次のエラーが発生します。

Your Ruby version is 2.0.0, but your Gemfile specified 1.9.3

その後rvm use 1.9.3、上記のエラーが返されるため、実行できません。

zsh を RVM で快適に動作させるにはどうすればよいですか?

私のセットアップに関するいくつかの情報:

  • Mac OS X 10.9.1 (マーベリックス)
  • iTerm2
  • Zsh 5.0.2 と oh-my-zsh
  • RVM 1.5.1
4

6 に答える 6

23

RVM が間違った場所にインストールされていることがわかりました。私が最初にRVMをインストールしたとき、シングルユーザー(にあるはず)ではなく、sudoマルチユーザーインストール(にインストール)を実行したコマンドで行ったと思います。これが、投稿されたすべてのソリューションが機能しなかった理由です./usr/local/rvm~/.rvm/scrips/rvm

でRVMをアンインストールする必要がありましたrvm implode。権限の問題がいくつかあったため、削除できなかったファイルを手動で削除する必要がありました。curl コマンドを実行して RVM を再インストールすると、正しい場所にインストールされました。

.zshrcwith での RVM のソーシング[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"が適切に機能するようになり、ルビーを切り替えることができるようになりました。

于 2014-04-01T15:24:47.300 に答える