【问题标题】:How to install MySQL gem on Mac OS X如何在 Mac OS X 上安装 MySQL gem
【发布时间】:2011-06-25 09:44:22
【问题描述】:

在 Mac OS X 上安装 mysql gem 需要什么?我收到错误“无法构建原生扩展”。

【问题讨论】:

    标签: mysql ruby osx-leopard


    【解决方案1】:

    首先安装 MySQL,使用二进制或Homebrew

    然后:

    gem install mysql2
    

    或者:

    gem install ruby-mysql
    

    随便挑一个就可以了。


    编辑

    如果您在 OS X 上升级到 MySQL 版本 5.6.12,mysql2 将无法编译。解决方案是按照此处所述降级 MySQL:https://stackoverflow.com/a/17252887/45254


    编辑2

    如果您不想安装 mysql(也许您使用 docker 来管理您的服务)但想使用 mysql2 gem,您可以安装 mysql-connector-c(使用自制软件)。

    【讨论】:

    • 用 homebrew 安装 mssql,输入命令:“brew install mysql”。
    • 如果您在 mac 端口遇到 mysql 问题,请运行:gem install mysql2 -- --with-mysql-config=/opt/local/lib/mysql?/bin/mysql_config
    • 你不想降级mysql5。在 Mysql8 中caching_sha2_password 是默认的缓存机制。如果客户端库不支持caching_sha2_password,您可以将mysql身份验证机制更改为sha256_password,如stackoverflow.com/questions/49948350/phpmyadmin-on-mysql-8-0
    【解决方案2】:

    前段时间我写了some instructions on my blog 来说明如何在 10.6 中做到这一点,但我认为在 10.5 中是一样的。

    我归结为这个命令:

    ARCHFLAGS="-arch x86_64" gem install mysql -- \
      --with-mysql-config=/path/to/mysql_config
    

    但您需要找到/path/to/mysql_config 的真正价值。我的博客文章有一些提示,但有一件非常重要的事情:您必须安装带有标头的 MySQL。 MySQL 的官方 .pkg 安装程序没有 IIRC。最好的办法是使用Homebrew 安装 MySQL(在帖子中我使用了 MacPorts 安装中的示例,但那是因为我编写 Homebrew 时还不成熟)。

    如果您使用 Homebrew 安装 MySQL,mysql_config 将位于 /usr/local/bin/mysql_config,如果您使用 MacPorts 安装它,它将位于 /opt/local/lib/mysql5/bin/mysql_config

    我同意建议您安装mysql2 gem 而不是mysql 的其他答案。我认为上面的命令也应该适用于mysql2

    【讨论】:

    • 仍在开发 10.15,尽管我忽略了 ARCHFLAGS
    【解决方案3】:

    如果您已经在网络上的其他地方运行了 MySQL 服务器,并且仍想安装 gem 而无需安装 MySQL,请尝试以下操作

    brew install mysql-connector-c
    

    紧随其后

    gem install mysql
    

    【讨论】:

      【解决方案4】:

      我正在使用 Homebrew 运行 Mac OS X Lion。

      安装 ruby​​ gem 的正确命令是……

      gem install mysql -- \ --with-mysql-config=/usr/local/bin/mysql_config 
      

      【讨论】:

        【解决方案5】:

        我使用的是 Mac OS X Mountain Lion,并使用 DMG 安装了 MySQL。

        gem install do_mysql -- \ --with-mysql-dir=/usr/local/mysql --with-mysql-lib=/usr/local/mysql/lib --with-mysql-include=/usr/local/mysql/include
        

        sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
        

        这对我有用;)

        【讨论】:

          【解决方案6】:

          对我来说这是最简单的:

          brew install mysql
          gem install mysql
          

          Brew 是 Mac OS 的软件包管理器,必须拥有。使用它安装mysql首先会带来gem命令所缺少的一切。

          【讨论】:

          【解决方案7】:

          我使用的是 Mac OS X 10.10 (Yosemite),对我来说使用下面的命令:

          gem install mysql2 -- \ --with-mysql-config=/usr/local/mysql/bin/mysql_config
          

          【讨论】:

            【解决方案8】:

            我使用 Homebrew 安装了 MySQL,我必须使用它才能最终升级 gem:

            gem install mysql2 -- --with-mysql-dir=/usr/local/opt/mysql/
            

            【讨论】:

            • 这对我有帮助,但我必须使用 mysql 所在的目录。对我来说是 opt/homebrew/opt/mysql ...
            【解决方案9】:

            我用 DWG 安装 MySQL mysql_config 将位于/usr/local/mysql/bin/mysql_config

            gem install mysql -- \ --with mysql-config=/usr/local/mysql/bin/mysql_config 
            

            【讨论】:

              【解决方案10】:

              我在 MacOs Mojave 上设置 MySQL gem 时遇到了这个问题。这对我有用

              1 确保已安装 Xcode 命令行工具。 xcode-select --install

              1. 对我来说,构建仍然失败,缺少一些必须安装的头文件 打开 /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

              此链接指向正确的方向。 Can't compile C program on a Mac after upgrade to Mojave

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2013-07-21
                • 1970-01-01
                • 1970-01-01
                • 2011-11-16
                • 2013-04-17
                • 1970-01-01
                • 2014-04-14
                相关资源
                最近更新 更多