我在Mac OS X Lion环境中使用RVM安装了Ruby和Rails。
我使用mysql2 gem(使用MAMP库而不是mysql安装)使Rails正常工作。所以一切都很好......
直到我尝试编写一个独立的ruby脚本(在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
没有任何效果。我想我很快就会哭...
答案 0 :(得分:11)
gem uninstall mysql2
brew install mysql
gem install mysql2
就这么简单。希望它也适合你!