【问题标题】:MySQL Gem for Ruby On RailsRuby On Rails 的 MySQL Gem
【发布时间】:2011-04-15 21:07:03
【问题描述】:

我到处搜索,没有一个解决方案可以解决我的问题。我使用 SQLite 而不是 MySQL 构建了 rails 应用程序。对于这个特定的项目,我需要 MySQL。当我尝试启动服务器时,我得到一个错误,所以我尝试为 MySQL 安装 gems 并得到另一个错误。有没有人有任何见识?谢谢!

    rails server
    Could not find gem 'mysql2 (>= 0)' in any of the gem sources listed in your Gemfile.

    sudo gem install mysql2
    Building native extensions.  This could take a while...
    ERROR:  Error installing mysql2:
        ERROR: Failed to build gem native extension.

            /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
    mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h


    Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/mysql2-0.2.7 for inspection.
    Results logged to /Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/ext/mysql2/gem_make.out

【问题讨论】:

  • 看起来您正在运行 OSX... 哪个版本?您是否为您的 OSX 版本安装了开发工具 (Xcode)?
  • 你是如何在你的 os x 机器上安装 mysql 的?
  • OS X 应该已经安装了 MySQL...但是您也可以从 MySQL website 下载二进制文件。
  • 运行 10.6.6。我正在尝试使用 MAMP 作为 MySQL 服务器,但我相信我已经直接从二进制文件安装了 MySQL。
  • 通过二进制重新安装服务器,但现在得到这个:dyld: lazy symbol binding failed: Symbol not found: _mysql_get_client_info Referenced from: /Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle Expected in: flat namespace dyld: Symbol not found: _mysql_get_client_info Referenced from: /Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle Expected in: flat namespace Trace/BPT trap

标签: mysql ruby-on-rails ruby ruby-on-rails-3


【解决方案1】:

我遇到了这个问题。您需要安装带有本机扩展的 mysql gem。

您可能正在寻找的行是:

$ ARCHFLAGS="-arch x86_64" gem install mysql2 --version '~> 0.2.7' -- --with-mysql-config=/usr/local/mysql/bin/mysql_config 

在这里写下完整的文章:http://softwaregravy.com/mysql-on-os-x-rails-3-0-7/

【讨论】:

    猜你喜欢
    • 2015-02-04
    • 2013-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多