Chr*_*ris 7 homebrew imagemagick freetype paperclip osx-lion
我正在尝试在Rails项目中使用Paperclip gem,因此遵循文档并首先使用Homebrew配方安装Imagemagick.
我在我的模型中添加了我的附件
has_attached_file :screenshot
Run Code Online (Sandbox Code Playgroud)
这工作正常,文件上传按预期运行
然后我想为此添加缩略图,所以再次按照文档添加到模型中
has_attached_file :screenshot,
:styles => { :medium => "300x300>",
:thumb => "100x100>" }
Run Code Online (Sandbox Code Playgroud)
此时上传不再有效
我查看了开发日志并注意到了这一点:
[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.>
Run Code Online (Sandbox Code Playgroud)
在一些谷歌搜索之后,我认为将默认路径设置为环境变量可能是个问题
Paperclip.options[:command_path] = "/usr/local/bin/"
Run Code Online (Sandbox Code Playgroud)
但我检查了这是正确的使用
which identify
Run Code Online (Sandbox Code Playgroud)
它回归了这条道路
/usr/local/bin/identify
Run Code Online (Sandbox Code Playgroud)
正如所料
然后我尝试从命令行运行识别作为测试并得到此错误
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
Run Code Online (Sandbox Code Playgroud)
所以我认为我的问题不在于回形针,而在于通过自制软件安装imageMagick
我已经尝试了所有建议包括
brew update
brew remove imagemagick
brew install imagemagick
Run Code Online (Sandbox Code Playgroud)
但它没有帮助我运行Lion 10.7.2并安装了开发人员工具.
任何建议将非常感谢.
Geo*_*rge 10
有一个更简单的解决方案.安装freetype:
brew install freetype
Run Code Online (Sandbox Code Playgroud)
或者,如果已经安装,那么您需要重新创建链接:
brew unlink freetype && brew link freetype
Run Code Online (Sandbox Code Playgroud)
这将为您解决所有问题.好吧,不是一切,但它至少可以解决这个问题.
| 归档时间: |
|
| 查看次数: |
6208 次 |
| 最近记录: |