我有一些问题时,试图安装mysql2宝石为Rails。当我试图通过运行bundle install或gem install mysql2来安装它时,它会给我以下错误:

安装mysql2错误:错误:未能建立gem本地扩展。

我如何解决这个问题并成功安装mysql2?


当前回答

如果你仍然有问题....

试着安装

   sudo apt-get install ruby1.9.1-dev

其他回答

I got the gem built on Mac OS X 10.6.6 by 1) Ensuring the Developer tools package is installed 2) Downloading the current MySQL package (5.5.8 in my case) from Source 3) Installing the cmake tool from cmake.org 4) Following the instructions in section 2.11 of INSTALL-SOURCE from the mysql distribution files 5) sudo gem install mysql2 -- --srcdir=/usr/local/mysql/include The gem built successfully, but there are two errors in the documentation that rdoc and ri complain about. But now when I try to require 'mysql2' I get a

LoadError: no such file to load -- mysql2/mysql2

我希望我得到的错误是libmysqlclient.16。Dylib无法找到,因为我们在另一篇文章中找到了(搜索install_name_tool)。

我的$PATH有/usr/local/mysql在里面(这是我的源代码和构建文件所在的位置),所以我有点难住了。如果有人有什么想法,我会在睡了几个小时后再来看看。

对于MacOS Mojave:

——with-cppflags=-I/usr/local/opt/openssl/include . gem install mysql2 -v '0.5.2' -- --with-ldflags=-L/usr/local/opt/openssl/lib——with-cppflags=-I/usr/local/opt/openssl/include

在Ubuntu/Debian和其他使用aptitude的发行版上:

sudo apt-get install libmysql-ruby libmysqlclient-dev

libmysql-ruby包已经被ruby-mysql所取代。这就是我找到解决办法的地方。

如果上面的命令不能工作,因为libmysql-ruby无法找到,下面的命令应该足够了:

sudo apt-get install libmysqlclient-dev

在使用yum的Red Hat/CentOS和其他发行版上:

sudo yum install mysql-devel

在Mac OS X和Homebrew上:

brew install mysql

在Debian Stretch上,适合我的包是default-libmysqlclient-dev

Sudo apt-get update && apt-get install -y default-libmysqlclient-dev

MacOS用户的另一种方式

如果你使用“brew”安装mysql:

gem install mysql2 -v 'x.x.x' -- --with-mysql-config=/usr/local/Cellar/mysql/y.y.y/bin/mysql_config

X.X.X =要安装的mysql2 gem的版本号 y.y.y =你安装的mysql版本ls /usr/local/Cellar/mysql