Mac OS X Lion環境にRVMとともにRubyとRailsをインストールしました。RVMでインストールされたmysql2 gemはRailsで正常に動作しますが、スタンドアロンのRubyスクリプトではうまく動作しません。
私は、mysql2 gemで正しく動作させるようにしました(mysqlインストールではなくMAMPライブラリを使用します)。だからすべてがうまくいった...
私はスタンドアロンのルビースクリプト(Railsのコンテキスト外)を書き込もうとしていました。そして今、私はmysql2 gemを動作させることができません。
スクリプト内から、またはRubyのコマンドライン(IRB)から、
require "mysql2"
命令は、次のエラーにつながる:
1.9.2p290 :001 > require "mysql2"
dyld: lazy symbol binding failed: Symbol not found: _mysql_get_client_info
Referenced from: /Users/mick/.rvm/gems/ruby-1.9.2-p290/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundle
Expected in: flat namespace
dyld: Symbol not found: _mysql_get_client_info
Referenced from: /Users/mick/.rvm/gems/ruby-1.9.2-p290/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundle
Expected in: flat namespace
私はいくつかのものを試してみた:
をexport DYLD_LIBRARY_PATH=/Applications/MAMP/Library/lib/mysql/:$DYLD_LIBRARY_PATH
何も働いていない
sudo ln -s /Applications/MAMP/Library/lib/mysql/libmysqlclient.16.dylib /usr/lib/libmysqlclient.16.dylib
を使用。私はすぐに泣くだろうと思う...
多くの場合、これは32ビットと64ビットのライブラリのバインディングが原因です。メソッドはそこにありますが、間違ったアーキテクチャです。再インストールは、これらの不規則性を解決する最も簡単な方法です。 – tadman
ありがとうございます、問題はあなたのトリックで修正されました。私はHomebrew(http://mxcl.github.com/homebrew/)をインストールする必要がありました。私はすでにMacportsとFinkをインストールしていましたが、私はそれをするのが嫌でしたが、私のスタンドアロンのRubyの問題は修正しました。 Railsアプリ。ホームブリューは、私の次のクリーンなMacのインストールで私の唯一のUNIXパッケージマネージャーかもしれません! –
私のために働いた。ありがとうございました! –