gem install rmagick -v 2.13.1 error在Mac OS 10.9.1上无法构建gem native扩展

时间:2014-01-09 14:37:09

标签: ruby-on-rails ruby gem imagemagick imagick

我通过提供MagickWand.h的路径尝试了一切,我安装了命令工具。任何人都可以帮助我吗?

$ gem install rmagick -v 2.13.1
  

构建原生扩展。这可能需要一段时间...错误:错误   安装rmagick:错误:无法构建gem原生扩展。

     

/Users/ghazanfarali/.rvm/rubies/ruby-1.8.7-p357/bin/ruby extconf.rb   检查Ruby版本> = 1.8.5 ...是检查   /usr/bin/gcc-4.2 ...是检查Magick-config ...是检查   ImageMagick版本> = 6.4.9 ...是检查HDRI禁用版本   of ImageMagick ...是检查stdint.h ...没有检查   sys / types.h ...没有检查wand / MagickWand.h ...没有

     

无法安装RMagick 2.13.1。找不到MagickWand.h。    * extconf.rb失败* 由于某些原因无法创建Makefile,可能缺少必要的库和/或标头。校验   mkmf.log文件以获取更多详细信息。您可能需要配置   选项。

     

提供配置选项: - with-opt-dir --without-opt-dir     --with-opt-include --without-opt-include = $ {opt-dir} / include     --with-opt-lib --without-opt-lib = $ {opt-dir} / lib --with-make-prog     --without-make-prog --srcdir =。 --curdir     --ruby = /用户/ ghazanfarali / .rvm /红宝石/红宝石1.8.7-P357 /斌/红宝石

     

Gem文件将保持安装状态   /Users/ghazanfarali/.rvm/gems/ruby-1.8.7-p357/gems/rmagick-2.13.1 for   检查。记录结果   /Users/ghazanfarali/.rvm/gems/ruby-1.8.7-p357/gems/rmagick-2.13.1/ext/RMagick/gem_make.out   “

2 个答案:

答案 0 :(得分:10)

我强烈建议使用类似HomeBrew的内容(如果您还没有)来管理OSX包。还有其他选择,包括MacPorts。

RMagic只是一个带有ruby绑定的ruby接口,用于底层的ImageMagic包。

我会确保安装了最新的imagemagick:

brew install imagemagick

或者,如果已安装:

brew upgrade imagemagick

或者,根据this answer

# install latest command line tools via xcode     
# make sure you have the latest homebrew with the latest packages 
brew update
# uninstall imagemagick and then reinstall to make use updated compiler
brew uninstall imagemagick
brew install imagemagick
# uninstall rmagick then reinstall to ensure native extensions are built against
# latest imagemagick
gem uninstall rmagick
gem install rmagick # or bundle

此外,您还可以运行:

brew doctor

确定可能影响这些包装构建的任何问题。

更新


两种方法:

    最近更新了
  1. RMagick以修复与最新ImageMagick相关的构建问题。使用版本 2.13.2 。根据RMagick自述文件: This release will fix the installation issues due to ruby 1.9.3 and ImageMagick 6.8+.

  2. 可能是更好的方法。将rmagick替换为mini_magick,因为正在积极开发mini_magick而不是rmagick。 Imagemagick也在积极开发中,因此随着API的变化,RMagick的日期API将变得越来越陈旧。

答案 1 :(得分:1)

请检查此question的答案。也许你只需要:

brew install imagemagick