bas*_*eck 12 ruby windows ruby-on-rails rmagick imagemagick
我正在开发一款Rail3应用程序.经过几个小时的努力,最后在win7x64/ruby 1.9.2上安装了rmagick 2.13.1 gem而没有错误,我遇到了另一个错误.是的,我听说过在windows中使用rails可能会很痛苦......
我使用carrierwave处理图像并将其上传到AWS S3.处理看起来像
class IconUploader < CarrierWave::Uploader::Base
require 'rmagick'
include CarrierWave::RMagick
...
process :resize_to_fit => [100, 100]
process :convert => :png
...
Run Code Online (Sandbox Code Playgroud)
当我在我的开发机器上触发文件上传时,它会抛出一个Windows弹出窗口,说
找不到CORE_RL_magick_.dll
谷歌对此并不是很有帮助.
我将PATH变量设置为C:/ ruby192/ImageMagick - 我已经安装了ImageMagick.这个文件夹有几个CORE_RL dll,包括magick.DLL本身不会丢失!
irb > require 'rmagick'
返回true并convert -version
输出:
Version: ImageMagick 6.6.9-6 2011-04-14 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2011 ImageMagick Studio LLC
Features: OpenMP
Run Code Online (Sandbox Code Playgroud)
所以我有几个问题.
elseif
我没有,是否还有Windows和heroku都支持的其他宝石和/或图形库?else
也许有一种方法可以配置carrierwave,而不是在开发环境中处理图像到目前为止,我已经尝试了ImageMagick v 6.6.9 32bit dll,它给出了CORE_RL dll错误,64位静态,没有用于编译rmagick gem的dev头,以及64位动态,这给了我很多undefined reference
错误.宝石编译,每个测试,除了第一个:
checking for snprintf() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... yes
checking for AcquireImage() in assert.h,ctype.h,stdio.h,stdlib.h,math.h,time.h,stdint.h,sys/types.h,wand/MagickWand.h... no
and so on...
Run Code Online (Sandbox Code Playgroud)
感谢大家.
bas*_*eck 18
我终于设法安装ImageMagick并构建RMagick gem并使其全部工作.万岁.
似乎问题出在DLL本身.当我试图注册它时,Windows给了我一个关于dll问题的错误.
所以我解决所有问题的方法是:
在命令行中键入convert -version以检查一切是否正常.它应该打印如下:
版本:ImageMagick 6.6.1-10 2010-05-15 Q16 http://www.imagemagick.org 版权:Copyright(C)1999-2010 ImageMagick Studio LLC特点:OpenMP
如果您还没有安装DevKit.
gem install rmagick --platform=ruby -- --with-opt-lib=c:/ruby192/ImageMagick/lib --with-opt-include=c:/ruby192/ImageMagick/include
它应该打印
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
Run Code Online (Sandbox Code Playgroud)
几分钟后,如果一切顺利,你应该看到
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...
Run Code Online (Sandbox Code Playgroud)
就是这样.希望这可以节省一些人在挫折中浪费几个小时.
归档时间: |
|
查看次数: |
24790 次 |
最近记录: |