错误:安装 mysql2 时出错:错误:无法构建 gem 原生扩展

Posted

技术标签:

【中文标题】错误:安装 mysql2 时出错:错误:无法构建 gem 原生扩展【英文标题】:ERROR: Error installing mysql2: ERROR: Failed to build gem native extension 【发布时间】:2015-03-06 02:17:00 【问题描述】:

我在尝试为 Rails 安装 gem install mysql2 -v '0.3.17' 时遇到了一些问题。当我尝试通过运行 gem install mysql2 -v '0.3.17' 或 gem install mysql2 -v '0.3.17' 来安装它时,它给了我以下错误:

ERROR:  Error installing mysql2:
    ERROR: Failed to build gem native extension.


Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --with-opt-include
    --without-opt-include=$opt-dir/include
    --with-opt-lib
    --without-opt-lib=$opt-dir/lib
    --with-make-prog
    --without-make-prog
    --with-mysql-dir
    --without-mysql-dir
    --with-mysql-include
    --without-mysql-include=$mysql-dir/include
    --with-mysql-lib
    --without-mysql-lib=$mysql-dir/lib
    --with-mysql-config
    --without-mysql-config

Gem files will remain installed in `..../gems/ruby-1.9.3-p392/gems/mysql2-0.3.17 for inspection`.
Results logged to `.../gems/ruby-1.9.3-p392/extensions/x86_64-darwin-14/1.9.1/mysql2-0.3.17/gem_make.out`

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

谢谢大家。

【问题讨论】:

能否包含.../gems/ruby-1.9.3-p392/extensions/x86_64-darwin-14/1.9.1/mysql2-0.3.17/gem_make.out 文件的内容。它在错误消息的最后一行显示为Results logged to.. 这应该会有所帮助:***.com/questions/4115126/… 【参考方案1】:

我在 Ubuntu 15.04 中,遇到了与上述相同的错误。

我做到了:

 sudo apt-get install libmysqlclient-dev 

在这之后我做了:

gem install mysql2

现在我可以成功了

rails new <app_name> -d mysql

没有任何错误。

【讨论】:

【参考方案2】:

安装 libmysqlclient-devel:

CentOS/Fedora:

yum install -y libmysqlclient-devel

Ubuntu:

apt-get install -y libmysqlclient-dev

苹果机:

brew install mysql

希望对你有帮助。

【讨论】:

mysql2 gem 需要。只需在 ``` gem install mysql2 ``` 或 ``` rails new app_name -d mysql ``` 之前安装即可。 在 Fedora 上这对我有用:yum install mysql-devel。 (或者更确切地说:dnf install mysql-devel【参考方案3】:

您好,这可能有两个原因。

1) 你没有为该尝试安装你的 mysql 服务器

$ brew install mysql

2) 尝试安装 mysql2 时未指定 mysql_config

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

【讨论】:

【参考方案4】:

您需要先安装 MySQL 服务器。你可能暂时没有。

【讨论】:

谢谢,我有 mysql 但没有 mysql2。 好了,前往 oracle 网站并将其安装在您的计算机上。完成后,gem 将安装

以上是关于错误:安装 mysql2 时出错:错误:无法构建 gem 原生扩展的主要内容,如果未能解决你的问题,请参考以下文章

错误:安装 mysql2 时出错:错误:无法在 AWS Linux 上构建 gem 原生扩展

在 Ubuntu 20.04 上安装 mysql2 gem 版本“0.3.21”时出错

错误:无法构建 gem 本机扩展(rails 3.2.3 上的 mysql2)

在 OSX 上安装 rmagick gem 时出错 - 错误:无法构建 gem 原生扩展

尝试使用 mysql2 gem 安装应用程序时出错

通过 Bundler 安装 mysql2 gem 时出错