为特定的mysql客户端版本安装mysql2 gem?

我正在尝试使用rails 3.1.0.rc6的mysql2 gem ,但我的mysql客户端有问题。

我在尝试启动服务器时收到此消息。

MySQL客户端库版本不正确! 这个gem是为5.1.53编译的,但客户端库是5.5.14。 (RuntimeError)

如何编译/安装mysql2以便可以使用mysql 5.5.14?

我尝试过使用gem pristine mysql2但没有成功。

这里的问题是MySQL2 gem是为Apple安装的MySQL版本(开发包)而不是我使用Homebrew编译的。

安装gem时使用此命令解决了问题。

gem install mysql2 -- --with-mysql-config=/usr/local/Cellar/mysql/5.5.14/bin/mysql_config

不要忘记使用以下命令安装mysql:

sudo brew install mysql

现在的问题是我们不知何故需要将选项传递给bundler,为此你可以使用bundler配置 。

bundle config build.mysql2 --with-mysql-config=/usr/local/Cellar/mysql/5.5.14/bin/mysql_config

现在应该在您的ruby应用程序中运行bundle install

看起来像mysql客户端库和mysql2编译的gem的无与伦比的版本给LoadError。

因此,他们明确提出了RuntimeError

所以,只有我知道的方式是,从github下载源代码并在你的机器上编译它。