2011-01-07 16 views
8

RVMのトラブルシューティング。RVM ruby​​ 1.9.2シンボルが見つかりません:_STR2CSTR

サーバーを実行している場合

、サーバーがクラッシュしたが、このエラーを受信の両方のRuby 1.9.2-ヘッド/ 1.9.2-P136をインストール:

dyld: lazy symbol binding failed: Symbol not found: _STR2CSTR 
Expected in: flat namespace 

dyld: Symbol not found: _STR2CSTR 
Expected in: flat namespace 

がこの投稿を見つけたがあまり助けにはなりませんでした。 http://www.ruby-forum.com/topic/215406

解決方法はありますか。

+0

何OSを実行するために、私のsqlite3の-ルビー宝石を更新しましたか? RVMをどのようにインストールしましたか? –

+0

マックOSXバージョン10.6.6 インストールRVMは、私も、私はこれを追加することを追加したい場合があります – user567604

+0

<<(http://rvm.beginrescueend.com/releases/rvm-install-headをカール) $はbashを使用して私のbatch_profile [$ HOME/.rvm/scripts/rvm "]] && source" $ HOME/.rvm/scripts/rvm " – user567604

答えて

0

あなたの宝石の1つ(ncurses?)は、ネイティブC APIを使用しています。 Ruby 1.9でSTR2CSTR関数が削除されました ffi-ncurses gemを使用するか、 ncurses gemのソースにパッチを当てて再コンパイルしてください。

+0

は同じ問題を抱えているようです...これらは私が取った手順です。 1)RVMのデフォルトは - ルビー1.9.2 2を使用します。)RVMを使用する@ rails3 - という名前のgemset 3)CDのtestappと - testappとDIR 4)宝石はFFI-ncursesの 5をインストール)バンドルは 6をインストール。)サーバを起動してください... まだ同じ問題があります – user567604

6

私はRuby 1.9.2とsqlite-ruby-1.2.4 gemと同じ問題を抱えていました。これはRails 3.0.3で何らかの形で必要とされています。これは私のエラーメッセージが表示されました:

dyld: Symbol not found: _STR2CSTR 
    Referenced from: ~/.rvm/gems/ruby-1.9.2-p136/gems/sqlite3-ruby-1.2.4/lib/sqlite3_api.bundle 
Expected in: flat namespace 

そして私はsqlite3_api.bundleのソースコードが置かれた~/.rvm/gems/ruby-1.9.2-p136/gems/sqlite3-ruby-1.2.4/extに行く、とStringValuePtras described here (first reply)によってSTR2CSTRのすべての発生を置き換えることによって、それを修正することができました。私はその後(makeを使って)再コンパイルし、結果としてsqlite3_api.bundleをlib /フォルダにコピーしました。

3

私は

gem 'sqlite3-ruby', :require => 'sqlite3' 

gem 'sqlite3', :require => 'sqlite3' 

に(あなたのGemfileに) だけの変更をsqlite3のと

bundle install 
関連する問題