在Mac OS X上安装Rmagick时出错

时间:2010-11-27 08:33:48

标签: macos ruby-on-rails-3 imagemagick rmagick

我为 OSX安装了 RMagick http://rmagick.rubyforge.org/install-faq.html#osx

我已经从 John Maddux 完成了 Imagemagick 安装(安装 ImageMagick的解决方案在OSX上而不使用 MacPorts

这是我的终端窗口:

Suebphatt:~ suebphattleelertphong$ ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]

Suebphatt:~ suebphattleelertphong$ rails -v
Rails 3.0.3

Suebphatt:~ suebphattleelertphong$ gem -v
1.3.7

Suebphatt:~ suebphattleelertphong$ gem install rmagick
Building native extensions.  This could take a while...
ERROR:  Error installing rmagick:
ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/rmagick-2.13.1 for     inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/rmagick-2.13.1/ext/RMagick/gem_make.out
Suebphatt:~ suebphattleelertphong$ 

非常感谢你的帮助, Suebphatt

3 个答案:

答案 0 :(得分:29)

我强烈建议你试试自制软件,这是macports的一个很好的替代品:

安装好自制软件后,您应该可以非常轻松地安装imagemagick和rmagick:

brew install imagemagick     # will take a while!
gem install rmagick

更多信息:

http://www.codedrop.ca/blog/archives/214

在这里:

http://weblogs.manas.com.ar/mverzilli/2010/05/19/install-the-rmagick-gem-in-the-painless-way-with-homebrewinstall-the-rmagick-gem-in-the-painless-way-with-homebrewinstall-the-rmagick-gem-in-the-painless-way-with-homebrewinstall-the-rmagick-gem-in/

更新:(感谢JJDthis answer

如果您在使用chiliproject安装时遇到问题,请尝试在没有openpmp的情况下安装:

brew install imagemagick --disable-openmp

更新X2 :(感谢Ramon Araujocomment

如果您以前使用自制软件安装了imagemagick,则必须在再次安装之前取消链接:

brew unlink imagemagick

答案 1 :(得分:8)

另一个需要注意的是imagemagick的版本。 我有ImageMagick版本6.8.0,这是最新的,如果你从自制软件安装,并且rmagick只是不用这个版本编译。

  

convert --version

并确保你的ImageMagick是6.7或更低,否则rmagick不会编译..

答案 2 :(得分:0)

暂时解决这个问题,下面的修复(从this SO answer复制)解决了问题(特别是关于符号链接的部分)。

rmagick在使用自制软件中的imagemagick(> = 6.8.0-10)时遇到问题。

你可以

通过

更新rmagick gem
bundle update rmagick

或手动符号链接一些dylib以使其工作:

$ cd "`Magick-config --prefix`lib"
$ ln -s libMagick++-Q16.7.dylib   libMagick++.dylib
$ ln -s libMagickCore-Q16.7.dylib libMagickCore.dylib
$ ln -s libMagickWand-Q16.7.dylib libMagickWand.dylib

之后gem install rmagick应该有用。

https://github.com/Homebrew/homebrew/issues/16625

中查看有关此问题的讨论