Rails + Mac OS X: libMagickCore-Q16.7.dylib无法工作。

3
如果我运行某种rake命令,我会收到以下错误消息:
rake aborted!
dlopen(/Users/adam/.rvm/gems/ruby-1.9.3-p327/gems/rmagick-2.13.1/lib/RMagick2.bundle, 9): Library not loaded: /usr/local/lib/libfreetype.6.dylib
  Referenced from: /usr/local/lib/libMagickCore-Q16.7.dylib
  Reason: Incompatible library version: libMagickCore-Q16.7.dylib requires version 16.0.0 or later, but libfreetype.6.dylib provides version 13.0.0 - /Users/adam/.rvm/gems/ruby-1.9.3-p327/gems/rmagick-2.13.1/lib/RMagick2.bundle
...

我正在使用RoR 3.2和OSX Lion操作系统。

请问有人能帮我解决这个问题吗?我已经花了两天时间在谷歌搜索、阅读讨论,但很遗憾一无所获...

非常感谢!


尽管我使用的是OSX 10.8.2、ruby 1.8.7和rmagick 2.9.1,但仍然存在相同的问题。ImageMagick是使用homebrew安装的,即brew install imagemagick。 - Glenn Snyder
4个回答

11

使用Homebrew,我能够通过以下命令解决它:

brew uninstall freetype
brew update
brew install freetype

更新步骤可能是不必要的。安装成功,但出现以下警告:

Warning: Could not link freetype. Unlinking...

所以最后一个命令:

brew link --overwrite freetype

仍然相关。谢谢! - Leon

2

我有一个令人惊奇的安装RMagick的方法,对于我而言已经非常成功。尝试按照以下步骤重新安装ImageMagick:

  1. yum install tcl-devel libpng-devel libjpeg-devel ghostscript-devel bzip2-devel freetype-devel libtiff-devel -y(我使用CentOS,你可以将命令翻译成适用于你的发行版)
  2. 下载ImageMagick 。输入 wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz并按Enter。 ImageMagick.tar.gz在当前目录中创建。
  3. 解压缩ImageMagick存档。输入 tar xczf ImageMagick.tar.gz 并按Enter。 将创建一个新目录ImageMagick-version,其中version是ImageMagick版本号。
  4. 切换到ImageMagick目录。 输入cd ImageMagick-version并按Enter。
  5. 配置ImageMagick生成。输入 ./configure --prefix=/usr/local --without-perl并按Enter。
  6. 编译ImageMagick。输入make并按Enter。ImageMagick进行编译。此步骤可能需要几分钟。
  7. 将ImageMagick安装到您的主目录下。输入make install并按Enter。
  8. 删除安装文件。键入rm -r ImageMagick.tar.gz并按Enter。
  9. 将/usr/local/bin添加到您的路径中。
    • 输入echo export PATH="/usr/local/bin:$PATH" >> ~/.bash_profile并按Enter。
    • 重新加载您的.bash_profile。输入source ~/.bash_profile并按Enter。
  10. 安装RMagick gem。
    • 输入export LD_LIBRARY_PATH=/usr/local/lib并按Enter。
    • 输入export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/并按Enter。
    • 在Ruby on Rails应用程序中安装RMagick gem。

稍后告诉我它的运行情况。


0
你是否使用类似 Homebrew 或者 MacPorts 来管理外部库依赖?
从这些工具中安装 imagemagick 库,然后再安装 rmagick。

当我运行brew install imagemagick时,会出现Error: imagemagick-6.8.0-10 already installed的错误提示,而我刚刚成功安装了rmagick-2.13.1...那么问题可能出在哪里呢? - user984621

0
我在另一个帖子中找到了答案:

Rails 3 - RMagick doesn't find libfreetype.6.dylib using Paperclip

我进行了搜索并发现存在一个旧版本的libfreetype被引用,而新版本则藏匿在其他地方。通过将较新的版本复制/链接到适当的目录(在我的情况下为/usr/local/lib),问题得以解决。

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