RVM を使用して Ruby 1.9.2 をパッチ レベル p180 から p290 にアップグレードしました。
rvm upgrade 1.9.2-p180 1.9.2-p290
次に、これらのコマンドを使用して、Rails gem とその他の gem を更新しました。
gem install rails 3.0.5
gem update
すべてがうまくいっているようです。rvm info
すべての Ruby バイナリと gem が正しい p290 パス (~/.rvm/*/ruby-1.9.2-p290/*) に移動されたことを示します。
ただし、Rails アプリケーション ディレクトリに移動してコマンドを発行するrails console
と、gem (activesupport-3.0.5) がファイルを読み込めないというエラー メッセージが表示されlibruby.1.9.1.dylib
ます。
10:30 AM ~/Development/rails_projects/my_app_0515 $ レールコンソール
/Users/whk/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.0.5/lib/active_support/dependencies.rb:239:「必要」: dlopen(/Users/whk/.rvm /gems/ruby-1.9.2-p290/gems/serialport-1.0.4/lib/serialport.bundle, 9):ライブラリが読み込まれていません: /Users/whk/.rvm/rubies/ruby-1.9.2-p180/ lib/libruby.1.9.1.dylib (LoadError) 参照元: /Users/whk/.rvm/gems/ruby-1.9.2-p290/gems/serialport-1.0.4/lib/serialport.bundle 理由: image not見つかった - /Users/whk/.rvm/gems/ruby-1.9.2-p290/gems/serialport-1.0.4/lib/serialport.bundle 。. .
パスはもう存在しない~/.rvm/rubies/ruby-1.9.2-p180/lib
ため、Rails は で dylib ファイルを見つけることができませんが、ファイルは にあります。p180
~/.rvm/rubies/ruby-1.9.2-p290/lib
別のStackOverflow の投稿から、この行を .bashrc に追加することで回避できることがわかりました
export DYLD_LIBRARY_PATH="/Users/whk/.rvm/rubies/ruby-1.9.2-p290/lib:$DYLD_LIBRARY_PATH"
しかし、rvm ruby のアップグレードが lib パスの変更を処理しない理由を理解したいですか? 誰もがよりクリーンなソリューションを知っていますか?それが構成されている場所からp180パスを削除するものですか?
ここに私の環境があります:
- Mac OS X 10.6.6 (Snow Leopard)
- rvm1.8.4
- ルビー 1.9.2p290
- レール 3.0.5
ありがとう!