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

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

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


当前回答

在纠正了mysql-dev问题之后,您可能需要删除坏的mysql2安装。仔细查看$ bundle安装后的消息。你可能需要

rm -rf vendor/cache/
rm -rf ./Zentest

这将清除坏的mysql2安装,以便最终的$ bundle安装可以创建一个好的安装。

其他回答

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

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

你试过用

 gem install mysql -- --with-mysql-lib=/usr/lib/mysql/lib 

来指定基本目录的位置以及完成gem安装所必需的MySQL库的路径?

来源: MySQL Gem安装错误:未能建立Gem本地扩展 MySQL论坛::Ruby::帮助安装MySQL绑定Ruby

从[这里][1]下载连接器C文件。(https://downloads.mysql.com/archives/c-c/) 将文件解压到一个位置,如C:\ror\mysqlC\mysql-connector-c-6.1.11-winx64\lib 使用这个模板

install mysql2——'——with-mysql-lib="$lib_location"——with-mysql-include="$include_location"'

我的安装位置是lib_location -> C:\ror\mysqlC\mysql-connector-c-6.1.11-winx64\lib

——with-mysql-lib="C:\ror\mysqlC\mysql-connector-c-6.1.11-winx64\lib"——with-mysql-include="C:\ror\mysqlC\mysql-connector-c-6.1.11-winx64\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

在Ubuntu (18.04)

我能够通过运行以下程序来解决这个问题:

sudo apt-get install build-essential libmysqlclient-dev
gem install mysql2

参考