错误:无法构建gem本机扩展 - 安装mysql2时出错

时间:2013-11-04 09:59:46

标签: mysql ruby-on-rails ruby rubygems bundler

运行bundle install时出现

错误

Installing mysql2 (0.3.11) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
...
Make sure that `gem install mysql2 -v '0.3.11'` succeeds before bundling.

当我跑步时确保gem install mysql2 -v '0.3.11'。我仍然得到同样的错误。

5 个答案:

答案 0 :(得分:94)

你在使用哪个操作系统?

无论如何,如果您使用ubuntu ,请https://github.com/brianmario/mysql2/issues/8 运行:

sudo apt-get install mysql-client libmysqlclient-dev

对于 Mac用户,(使用brew安装),请检查此http://mxcl.github.com/homebrew/,或运行:

brew install mysql

然后

sudo gem install mysql2

Windows用户检查以下链接以获取解决方案。 Error installing mysql2: Failed to build gem native extension

我建议使用正常的命令提示符。

答案 1 :(得分:0)

有时您需要更新Ruby库,运行以下代码:

sudo gem update --system

答案 2 :(得分:0)

错误已修复..

尝试安装这些软件包..

  

sudo apt-get install libmysqlclient-dev

     

sudo apt-get install bundler

安装捆绑器后.. 试试

  

gem install mysql2

它的工作..酷:)

答案 3 :(得分:0)

如果堆栈跟踪包含此错误:

mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

查看您使用的红宝石版本:

ruby -v

然后安装与你的ruby版本一起使用的正确版本的ruby dev:

sudo apt-get install ruby2.0-dev
sudo apt-get install ruby2.2-dev
sudo apt-get install ruby2.3-dev

然后:

gem install mysql2

答案 4 :(得分:0)

该线程有助于安装mysql2

Github thread on installing mysql2 on OSX Mojave

在我尝试过的线程中提到

$ bundle config build.mysql2 --with-opt-dir=/usr/local/opt/openssl