无法为Rails项目安装mysql2 gem

时间:2017-04-20 15:09:21

标签: ruby-on-rails mysql2

我在Stackoverflow.com上看过并尝试了关于这个主题的所有内容,但仍然无法弄明白......

当我'gem install mysql2'时,我收到权限错误。当我'sudo gem install mysql2'时,我得到以下内容:

class CardNumber(Enum):

    _order_ = 'EIGHT NINE TEN JACK QUEEN KING ACE'  # only needed for Python 2.x
    _settings_ = NoAlias

    EIGHT    = 8
    NINE     = 9
    TEN      = 10
    JACK     = 10
    QUEEN    = 10
    KING     = 10
    ACE      = 11

任何有想法,建议,提示,修复等的人......我真的很感激。

谢谢!

6 个答案:

答案 0 :(得分:9)

根据this question的回答,运行以下命令对我来说是有效的

gem install mysql2 --source 'https://rubygems.org/' -- --with-ldflags=-L/usr/local/opt/openssl/lib --with-cppflags=-I/usr/local/opt/openssl/include

答案 1 :(得分:5)

  1. 确保通过Homebrew在Mac上安装了openssl。
brew install openssl
  1. 安装mysql2 gem。
gem install mysql2 -v '0.5.2' -- --with-ldflags=-L/usr/local/opt/openssl/lib --with-cppflags=-I/usr/local/opt/openssl/include
  1. 如果该错误未修复,则上述解决方案为最后一个
sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /

如果上述方法不起作用,则为另一种解决方案。

cd /usr/local/Cellar/openssl/1.0.2s/lib/

sudo cp libssl.1.0.0.dylib libcrypto.1.0.0.dylib /usr/local/lib

答案 2 :(得分:2)

这在 macOS Catalina 上对我有用:

确保你已经安装了 openssl。如果不是:

brew install openssl

然后进行 gem 安装:

gem install mysql2 -- --with-opt-dir="$(brew --prefix openssl)"

答案 3 :(得分:1)

我在Mojave上遇到了同样的问题,以前的答案都没有用,但是在Github问题comment中提到的此命令确实有用

第1步。

brew install openssl

第2步。

export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/

就我而言,我已经安装了openssl,因此实际上是导出命令解决了该问题。

答案 4 :(得分:0)

尝试一下:

which mysql

然后,使用输出结果通过现有的mysql安装目录安装gem:

gem install mysql2 -- --with-mysql-dir=<mysql-installation-directory>

答案 5 :(得分:0)

疯狂 2 小时后它对我有用

  1. 卸载 Ruby 并安装 Ruby v2.6.6
  2. 以管理员身份运行命令行 gem install mysql2
  3. 安装导轨 gem install rails
  4. 创建新项目rails new my_proj -d mysql

在 Windown 中 100% 工作