ImageMagick-6.8.6-8 Paperclip::Errors::NotIdentifiedByImageMagickError (注:这是一个提问标题,无需回答) 请问该错误信息的含义是什么?

3
我有一个应用程序,使用Rails 4和Ruby 2。我开始使用mongoid-paperclip,它可以正常工作。
我安装了ImageMagick-6.8.6-8,并在development.rb中添加了Paperclip.options [:command_path] = "/usr/local/bin/"。我还有:
mongoid-paperclip rmagick (~> 2.13.2) cocaine (0.5.1)
当我添加“has_mongoid_attached_file:avatar,:styles => {:small =>"160x160!"}”时,我开始遇到以下错误: Paperclip :: Errors :: NotIdentifiedByImageMagickError:Paperclip :: Errors :: NotIdentifiedByImageMagickError。
请帮忙解决一下,因为我已经花费了很多小时,但没有任何进展。
4个回答

2

注意:本解决方案适用于使用“brew”安装的OS-X机器和imagemagick。

我的一些学生(我在开发者训练营教授Rails)在他们的Mac OS-X机器上遇到了完全相同的问题。以下解决方案解决了所有问题。

问题原因

问题的原因是jmagemagick在您的计算机中使用错误的GCC编译器进行编译。尽管它可能已经编译成可执行文件(二进制文件),但运行时会由于链接错误而失败(它正在尝试动态加载某些依赖项,即库)。

解决方案

您需要使用正确的GCC重新安装imagemagick。如果您有Mac,请按照以下说明操作:

  1. 打开XCode程序(如果没有,请安装)
  2. 转到首选项并打开“下载”选项卡
  3. 下载“命令行工具”
  4. 下载完成后,打开终端
  5. 运行“brew reinstall imagemagick”

就这样!


我相信这应该被接受为正确答案,特别是如果原始用户以前使用的是旧版本的OSX,就像我一样。 - David Rhoden

0
1- 我遇到了同样的问题,但我解决了它。当我配置动态链接器运行时绑定以创建必要的链接和缓存到最新的共享库时,我使用了ldconfig命令
所以你需要使用以下命令:
sudo ldconfig /usr/local/lib

其实,我建议按照如何安装ImageMagick并设置Paperclip的步骤重新安装ImageMagick。
2- 你需要在development.rb文件中添加以下代码:
Paperclip.options[:command_path] = "/usr/local/bin/"

0

对我来说,运行这两个命令解决了问题。记得使用 --force,因为 libtool 是 keg-only。

brew install libtool --universal
brew link libtool --force

0

当使用brew install imagemagick时,似乎安装的是一个缺少TIFF支持的预编译二进制文件。请使用以下命令安装具有正确TIFF支持的ImageMagick:

brew install libtiff
brew reinstall imagemagick --with-libtiff

(感谢Groveriffic:https://dev59.com/oWcs5IYBdhLWcg3wUCYI#13150641


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接