Ruby on rails 如何使用;mysql2“;Windows 7上Rails 3应用程序中的gem?

Ruby on rails 如何使用;mysql2“;Windows 7上Rails 3应用程序中的gem?,ruby-on-rails,ruby-on-rails-3,windows-7,wamp,mysql2,Ruby On Rails,Ruby On Rails 3,Windows 7,Wamp,Mysql2,我尝试在32位Windows 7上安装mysql2gem 我运行: gem install mysql2 我得到以下错误: ERROR: Error installing mysql2: The 'mysql2' native gem requires installed build tools. Please update your PATH to include build tools or download the DevKit from 'http://rubyin

我尝试在32位Windows 7上安装
mysql2
gem

我运行:

gem install mysql2
我得到以下错误:

ERROR:  Error installing mysql2:
        The 'mysql2' native gem requires installed build tools.

Please update your PATH to include build tools or download the DevKit
from 'http://rubyinstaller.org/downloads' and follow the instructions
at 'http://github.com/oneclick/rubyinstaller/wiki/Development-Kit'
有什么想法会导致这个错误,以及如何解决这个问题


更新

我按照描述做了所有事情,但我不知道最后一步:

gem install mysql2 -- 
     '--with-mysql-lib="c:\Program Files\MySQL\MySQL Server 5.1\lib\opt" 
      --with-mysql-include="c:\Program Files\MySQL\MySQL Server 5.1\include"'
我知道我应该在我的系统中将路径更改为正确的路径,但在我的WAMP MySQL安装中找不到
lib\opt
include
目录。我使用WAMP 2.1


请告知。

好吧,我并不真正使用Windows,但是从下载DevKit怎么样http://rubyinstaller.org/downloads'并按照http://github.com/oneclick/rubyinstaller/wiki/Development-Kit“?

您应该再次执行安装文件,并选择修改选项,然后检查开发人员组件。完成后,您将找到include文件夹和opt文件夹。

从apachefriends.org尝试XAMPP,确保下载完整版本,您将找到“lib”、“bin”、“include”和其他MySQL目录。有关更多详情,请参阅-


对于任何感兴趣的人来说,这里都是一个合适的解决方案,它不会影响您当前的mysql服务器安装-

编辑:确保在MySQL服务器上下载正确的版本:

如果您打算连接到6.0或5.5服务器,请下载这些二进制文件。我正在连接MySQL5.1——因此我的例子就是这样。还请记住,最新的mysql2 gem(V0.3.7)是针对mysql服务器6进行测试的,因此它一直无法在windows上构建早期版本。还要确保在ruby文件夹中使用正确的libmysql.dll

  • 使用mysql server 5.1下载zip文件,而不是msi文件。确保它是32位而不是64位。()

  • 由于没有与此相关的安装程序文件,请创建一个文件夹c:\mysql gem install-完成后可以将其删除

  • 将zip文件中的所有文件解压缩到刚刚创建的文件夹中

  • 现在运行这个命令

     gem install mysql2 --  '--with-mysql-lib="c:\mysql-gem-install\lib\opt"  --with-mysql-include="c:\mysql-gem-install\include"'
    
  • 我刚刚安装了mysql2gemv。0.3.7

    编辑1 还有一件事:确保直接在命令提示符下运行命令。与PowerShell或Console2不同——出于某种原因,如果您尝试这样做,它会给出错误“invalid option”——与解析方式有关

    编辑2
    我只是在做一个空白的Windows7安装,我遇到的一件事是,您需要再添加一个步骤:检查ruby bin目录中是否有libmysql.dll,如果没有,请从mysql安装中复制一个。它应该与您的mysql2版本相同。

    谢谢!注意:我还必须包括--platform=ruby选项。因此,最终的整个命令行是:

    gem安装mysql2--platform=ruby--with mysql lib=“c:\mysql gem install\lib\opt”--with mysql include=“c:\mysql gem install\include”

    当我在没有platform=ruby选项的情况下尝试它时,DevKit没有运行,它只是安装了普通的mysql2 gem——它甚至给出了一条关于mysql2为6.0.2构建的警告消息。我卸载了它(gem uninstall mysql2),然后用--platform=ruby再次运行它,结果非常棒


    Me:Windows 7 64位、Ruby 1.9.3p125、Rails 3.2.1、MySQL 5.1.56并非所有mysql2版本都附带Windows二进制文件

    在windows上安装gem mysql2最简单的方法是选择一个包含win二进制文件的版本

    选择包含“x86-mingw32”的最新版本号

    例如0.3.11

    要安装它,请执行以下操作:

    gem install mysql2 -v 0.3.11
    
    或在GEM文件中:

    gem „mysql2“, „0.3.11“
    

    以前,当我在Windows XP上安装mysql2时,我没有这个问题。所以我想知道Windows7上的安装是否应该如此复杂。这是暂时的问题吗?这可能是因为您事先在winxp上安装了devkit。这是它工作的必要条件。这不是一个临时的解决方案,而是你必须要做的事情,SpyrosP的回答会让你走。我最近使用rubyinstaller和DevKit让Ror3与Ruby1.9.2和MySql一起毫无问题地运行。请务必严格遵守devkit的说明。@nathan:您是否使用了
    mysql
    mysql2
    ?@nathan:此外,我使用了说明,安装测试成功通过!我在WAMP的安装目录中没有看到任何安装文件。“设置文件”是什么意思?发布多个问题的复制粘贴样板/逐字回答时要小心,这些问题往往被社区标记为“垃圾邮件”。编译但不知道如何包含在GemFileNM中使用的是错误文件中的
    包更新
    。我知道现在就包括它。谢谢你指出不要使用PowerShell。我一直在做无效的选择。在标准cmd上工作。这是迄今为止这个问题的最佳答案,并为我节省了很多时间。如果您使用的是MySQL 5.5,请使用--with MySQL lib=“c:\MySQL gem install\lib”,因为在该安装中没有opt目录。我用它来安装mysql2 gem的0.3.14版,没有问题。仅供参考:在我进行捆绑更新的那一刻,bundler安装了现有的mysql2 gem,并开始在我的应用程序中使用它。下面是重新开始工作的过程:1)gem卸载mysql2,选择ALL。2) 再次运行gem安装代码(上面是我的上一篇文章)。完成了。这对我来说很有帮助。另一件需要注意的事情是从上面的链接下载“no install”zip文件。对我来说是“mysql-no-install-5.1.62-win32.zip”。