安装了Homebrew的Lion上的Imagemagick问题

时间:2012-03-02 16:41:43

标签: imagemagick paperclip osx-lion homebrew freetype

我正在尝试在Rails项目中使用Paperclip gem,因此请按照文档进行操作,并首先使用Homebrew配方安装Imagemagick。

我在我的模型中添加了附件

has_attached_file :screenshot

这工作正常,文件上传按预期运行

然后我想为此添加缩略图,所以再次按照文档添加到模型

  has_attached_file :screenshot, 
                :styles => { :medium => "300x300>",
                             :thumb => "100x100>" }

此时上传不再有效

我查看了开发日志并注意到了这一点:

[32mCommand[0m :: identify -format %wx%h '/var/folders/ky/r5gsdhbn6yggbglsg727cc900000gn/T/stream20120302-60051-eh17n7.png[0]'
[paperclip] An error was received while processing: #<Paperclip::NotIdentifiedByImageMagickError:     
/var/folders/ky/r5gsdhbn6yggbglsg727cc900000gn/T/stream20120302-60051-eh17n7.png is not recognized by the 'identify' command.>

在一些谷歌搜索之后,我认为将默认路径设置为环境变量可能会出现问题

Paperclip.options[:command_path] = "/usr/local/bin/"

但是我使用

检查了这是正确的
which identify

它返回了这条路径

/usr/local/bin/identify

正如预期的那样

然后我尝试从命令行运行识别作为测试并得到此错误

dyld: Library not loaded: /usr/X11/lib/libfreetype.6.dylib
  Referenced from: /usr/local/bin/identify
  Reason: Incompatible library version: identify requires version 14.0.0 or later, but libfreetype.6.dylib provides version 13.0.0
Trace/BPT trap: 5

所以我认为我的问题不在于回形针,而在于通过自制软件安装imageMagick

我已尝试过所有建议,包括

brew update
brew remove imagemagick
brew install imagemagick

但它没有帮助我运行Lion 10.7.2并安装了开发人员工具。

非常感谢任何建议。

5 个答案:

答案 0 :(得分:10)

有一个更简单的解决方案。安装freetype:

brew install freetype

或者,如果已经安装,则需要重新创建链接:

brew unlink freetype && brew link freetype

这将为您解决所有问题。好吧,不是一切,但它至少可以解决这个问题。

答案 1 :(得分:6)

我遇到了同样的问题。在操作系统上运行软件更新为我解决了这个问题。 libfree的版本已过期。 Paperclip,ImageMagick和Homebrew都运转良好。

答案 2 :(得分:2)

OSX MoutainLion上的软件更新后,ImageMagick也不再为我工作了,只是按照Chris工作的步骤进行了操作:

brew update
brew remove imagemagick
brew install imagemagick

答案 3 :(得分:0)

我的Mountain Lion(10.8)安装中缺少libfreetype。在这种情况下,安装XQuartz将替换丢失的lib。 http://xquartz.macosforge.org/landing/

答案 4 :(得分:0)

我希望这有助于某人: 在我尝试了所有这些解决方案(更新brew,重新安装imagemagick,取消链接并再次链接)后,没有成功,我想到 Paperclip可能是问题。我只是这样做:

 bundle update paperclip

问题解决了!

注意:imagemagick正常对我有用。当我从控制台运行identify -format %wx%h /path/to/a/file时,它工作正常(我得到图像的大小)。 '识别'问题只发生在我的rails应用程序中。