2011-04-24 205 views
2

可能重复:
In my rails 3 app, simple_captcha doesn't display image on production mode安装mysql2宝石错误

我通过macport但创业板名单安装Ruby和Ruby宝石不包括mysql2。那么我怎么会得到安装在我的宝石列表里面的“/ opt/local/bin/gem”中的mysql2 gem

另外,什么是mysql2 gem?我有MySQL的宝石,只想使用MySQL,不确定是什么意思的MySQL2。当我尝试在应用上启动webrick时,它会给我一个mysql2错误。

感谢

更新: 我RAM sudo的创业板安装mysql2,得到了以下几点:

大厦原生扩展。这 可能需要一段时间...成功 安装mysql2-0.2.7 1宝石安装 为 mysql2-0.2.7安装文件里...

封闭类/模块“mMysql2”的 类客户端不众所周知

封闭类/模块“mMysql2”不知道安装的RDoc 文档mysql2-0.2.7 ... 类结果

封闭类/模块“mMysql2”的 类客户端不知道

封闭类/模块“mMysql2”的 类结果不知道mysql2安装

Asuming,即使文档我才不会收到以下错误,当我尝试在我的应用程序启动的WEBrick。

轨服务器:

/opt/local/lib/ruby/gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle: 的dlopen(/选择/本地/ LIB /红宝石/宝石/ 1.8 /宝石/ mysql2-0.2.7/LIB/mysql2/mysql2.bundle, 9):库未加载: libmysqlclient.18.dylib(LoadError)从参考
: /选择/ local/lib/ruby​​/gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle 原因:image not found - /opt/local/lib/ruby/gems/1.8/gems/mysql2- 0.2.7/lib/mysql2/mysql2.bundle from /opt/local/lib/ruby/gems/1.8/gems/mysql2-0.2.7/lib/mysql2.rb:8 from /opt/local/lib/ruby/gems/1.8/gems/bundler- 1.0.7/lib/bundler/runtime.rb:64: require' from /opt/local/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:64:in require'from /opt/local/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb: 62:在 each' from /opt/local/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:62:in 需要 '从 /opt/local/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:51:in each' from /opt/local/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:51:in 需要' 从 /选择/ local/lib目录/红宝石/宝石/ 1.8 /宝石/捆扎机-1.0.7/lib目录/捆绑。rb:112: require' from /Users/summer/Sites/simple_cms/config/application.rb:7 from /opt/local/lib/ruby/gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:28:in require'from /opt/local/lib/ruby/gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:28 from /opt/local/lib /ruby/gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:27:in tap' from /opt/local/lib/ruby/gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:27 from script/rails:6:in需要” 从脚本/轨道:6

+0

你缺少的libmysqlclient-dev的头试图寻找在MacPorts的该库。这是我必须安装在我的Ubuntu上,以安装宝石。 – sirfilip 2011-05-06 06:49:53

+0

如何将一个完全不相关的问题标记为重复? – 2015-03-16 22:51:41

回答

2

据我所知,两个gem(mysql和mysql2)之间的区别之一是mysql2在UTF-8上效果更好。这里有关于它的is an article

要安装mysql2宝石,只需要运行:

gem install 'mysql2' 
+0

@amokrane出现错误,将其粘贴在问题 – Saad 2011-04-24 22:47:23

+0

以上请查看此页:http://stackoverflow.com/questions/4115126/ruby-gem-mysql2 -install-失败。阅读所有答案,特别是来自Holger Just的答案。 – 2011-04-24 22:52:42

+0

但是从你的日志看来,这个宝石看起来实际上已经安装好了,错误只是与文档相关! – 2011-04-24 22:54:36

2

为了执行用于搜索远程宝石可用运行命令 宝石搜索mysql2 -R(注意最后的-r)

* REMOTE GEMS *

了activerecord-mysql2legacydb适配器(0.2.0) 了activerecord-mysql2spatial适配器(0.3.2) em_mysql2_connection_pool(0.0.5) ghazel-mysql2(0.2.6.3) mysql2(0.2.7,0.2。 6 x86的的mingw32 x86的mswin32-60) mysql2_bigint(0.2.6.1) mysql2_model(0.1.2) mysql2mysql(0.0.2) mysql2psql(0.1.0) mysql2xxxx(0.0.4)

从你应该选择mysql2的宝石列表并运行 sudo gem install mysql2

+0

@sirfillip出现错误,将其粘贴在问题 – Saad 2011-04-24 22:47:02