20

CentOS で Ruby 1.9.1p243 を実行しています。rvm をインストールして、1.9.2 へのアップグレードまたは 1.8.7 へのダウングレードを処理することにしました (どちらかが rails3 でうまく機能することが判明しました)。

http://rvm.beginrescueend.com/rvm/install/の指示に従い、すべてが正しくインストールされました。Ruby 1.8.7、1.9.1、および 1.9.2 をコンパイルしてインストールできました。

しかし、実際に rvm がインストールされた Ruby の 1 つに切り替えようとすると、たとえば rvm は 1.8.7 を使用し、何も機能しません。私のシステムは、/usr/local/bin/ruby にインストールした Ruby をまだ使用しています。

私が得る出力の例:

$ rvm use 1.8.7
$ ruby -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i686-linux]
$ which ruby
/usr/local/bin/ruby
$ rvm use 1.9.2
$ ruby -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i686-linux]
$ which ruby
/usr/local/bin/ruby

なぜこれが起こっているのかわかりません。また、この問題についてオンラインで何も見つけられないようです。どんな助けでも大歓迎です。

4

5 に答える 5

25

同じ問題に遭遇しました。

次のスクリプトを~/.bash_profileに追加する代わりに、 ~/.bashrcに追加します。

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # This loads RVM into a shell session.

そして、ターミナルを再起動します。

于 2011-03-20T03:37:43.000 に答える
17

通常、rvm のサポートは IRC (#rvm on freenode) 経由で行うのが最も簡単です。この場合、「type rvm | head -n1」を実行すると何が表示されますか? 「rvm は関数です」と表示されるはずです。そうでない場合は、ソース rvm への行が正しく実行されていないため、切り替えが機能しないことを意味します。通常、これは ~/.bashrc にリターンがあるか、ソース rvm に行を追加し忘れたことを意味します。

于 2010-07-18T22:07:09.810 に答える
12

インストールは root アカウントで行います。シェル [[ -s "/usr/local/rvm/scripts/rvm" ]] && でこれを試してください。「/usr/local/rvm/scripts/rvm」

rvm スイッチ操作の前。プロファイル ファイルにこの行を追加すると、すべて問題ありません。

于 2010-09-11T13:25:17.153 に答える
0

ターミナルの問題である可能性があるため、ターミナルのウィンドウを閉じて、新しいウィンドウを開く必要があります。:) 変更されたかどうかをもう一度確認してください...

于 2011-03-23T01:48:00.637 に答える