Windows 7上的Ruby on Rails RMagick

好吧,我一直在尝试在Windows 7 x64机器上安装Rmagick。 我已经查看了Stack Overflow和其他网站上的每一个教程,但无论我遵循哪个教程,我都会收到“无效的驱动器规范”错误。 我的环境来自http://railsinstaller.org/ 。 有没有人最近成功安装了Rmagick可以指出我正确的方向? 谢谢,这让我发疯,但我真的要让它发挥作用。

首先也是最重要的是,在报告问题或寻求帮助时,请始终包含有关您要安装的内容的版本信息,特别是Ruby。

看来你正在使用RailsInstaller进行安装,但由于你没有提到是2.0预览版还是稳定版,我假设你使用的是基于Ruby 1.8.7-p334的稳定版。

现在,RailsInstaller已经包含了所需的部分:Ruby和RubyInstaller DevKit组件,因此将跳过有关安装的步骤并直接跳转到RMagick本身。

要成功安装RMagick gem,您需要带有开发标头的ImageMagick二进制文件,如RubyInstaller的Tutorial wiki页面中所述 ,该页面链接在此处

请下载32位版本的ImageMagick,因为Ruby是32位。

对于我的测试,我已经下载了安装程序版本ImageMagick-6.7.0-8-Q16-windows-dll.exe

下载并安装在没有空格的路径中后,我选择了安装C和C ++的开发头文件和库

然后打开一个新的命令提示符,确保Ruby可用(使用ruby -v检查)并执行以下命令后:

 gem install rmagick --platform=ruby -- --with-opt-lib=C:\ImageMagick-6.7.0-Q16\lib --with-opt-include=C:\ImageMagick-6.7.0-Q16\include 

该命令需要相当长的时间(在我的Core 2 Duo上需要1分钟),但最终结果是:

 Fetching: rmagick-2.13.1.gem (100%) Temporarily enhancing PATH to include DevKit... Building native extensions. This could take a while... Successfully installed rmagick-2.13.1 1 gem installed 

现在,您可以使用IRBvalidation是否已成功安装RMagick:

 irb(main):001:0> require "rubygems" => true irb(main):002:0> require "rmagick" => true irb(main):003:0> Magick::Version => "RMagick 2.13.1" 

现在,如果您使用的是Ruby 1.9.2,则上一个RMagick版本与它不兼容,您需要从源代码构建。 还有另一个关于RubyInstaller wiki的教程,但是如果我们讨论这些问题,请在RubyInstaller小组阅读这个主题 。

希望这一切都有帮助。

上面的post对我不起作用,对我来说关键是使用GitsBash,它带有RailsInstaller,还包括Devkit。

安装railsinstaller – > http://www.railsinstaller.org (我将它安装到c:\ Rails)
安装ImageMagick – > ImageMagick-6.7.3-8-Q16-windows-dll.exe (我将它安装到c:\ ImageMagick)

打开GitBash

 $ gem install rmagick --platform=ruby -- --with-opt-lib=c:/ImageMagick/lib --with-opt-include=c:/ImageMagick/include 

 Temporarily enhancing PATH to include DevKit... Building native extensions. This could take a while... Successfully installed rmagick-2.13.1 1 gem installed Installing ri documentation for rmagick-2.13.1... Installing RDoc documentation for rmagick-2.13.1... 

另外,在gemfile中我已经在开发组中注释掉了’rmagick’

这就是我的gemfile的样子

 group :development do #this is used on localhost gem 'mysql2' gem 'paperclip' #gem 'rmagick' #dont need this gem 'devise' end 

 group :production do #this is used on heroku gem "pg" #this is postgresql used on heroku gem "aws-s3" #this is used for amason S3 filestorage gem 'paperclip' gem 'rmagick' gem 'devise' end 

我们刚刚遇到Windows 7,Ruby 2.0和Rails 4.0的这个问题

本教程非常有效:

  1. 从ImageMagick.org下载最新的ImageMagick安装程序 (截至编写时,“[ImageMagick-6.8.7-0-Q16-x86-dll.exe] [3]” – 完整的安装程序(不是二进制文件))

  2. 下载后,安装ImageMagick文件路径中没有任何空格(EG C:/ ImageMagick),并选中以下选项:

    • 将应用程序目录添加到系统路径
    • 库C&C ++的安装程序开发标题
  3. 在Ruby CMD中,使用正确的文件路径安装RMagick Gem:

gem install rmagick --platform=ruby -- --with-opt-lib=**c:/ImageMagick-6.7.0-Q16/lib** --with-opt-include=**c:/ImageMagick-6.7.0-Q16/include**

这应该适合你

我大约一个月前安装了它。 我必须克服的许多错误之一是“无效的驱动器规范”

我刚刚开始在博客上写一篇关于在Win7上安装RMagick的post,基于我自己回答的问题 。 但需要注意的是:我使用了ruby 1.9.2,railsinstaller似乎使用了1.8.7。

如果我没记错,这个错误可能是由图像magick安装路径中的空格引起的。

我没有特权,很遗憾在这里发表我对Luis Lavena答案的评论。

一个对我有用的解决方案是从“使用Ruby和Rails命令提示符”(从Windows开始菜单)运行Luis Lavena的解决方案。 它加载所有必要的配置。