38

I am already completely desperate - I spent whole day with trying to install rmagick gem to Mac OS X Lion, but literally it's a tragedy. I saw many similar threads on Google, but nothing has helped me.

I tried completely uninstall imagemagick via brew and install it again (this is working well) and then to install the rmagick, but every time when I try to install this gem, I receive this error:

Building native extensions.  This could take a while...
ERROR:  Error installing rmagick:
    ERROR: Failed to build gem native extension.

        /Users/adam/.rvm/rubies/ruby-1.9.3-p327/bin/ruby extconf.rb
checking for Ruby version >= 1.8.5... yes
extconf.rb:128: Use RbConfig instead of obsolete and deprecated Config.
checking for clang... yes
checking for Magick-config... yes
checking for ImageMagick version >= 6.4.9... yes
checking for HDRI disabled version of ImageMagick... yes
checking for stdint.h... yes
checking for sys/types.h... yes
checking for wand/MagickWand.h... yes
checking for InitializeMagick() in -lMagickCore... no
checking for InitializeMagick() in -lMagick... no
checking for InitializeMagick() in -lMagick++... no
Can't install RMagick 2.13.1. Can't find the ImageMagick library or one of the dependent libraries. Check the mkmf.log file for more detailed information.

*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-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=/Users/adam/.rvm/rubies/ruby-1.9.3-p327/bin/ruby
    --with-MagickCorelib
    --without-MagickCorelib
    --with-Magicklib
    --without-Magicklib
    --with-Magick++lib
    --without-Magick++lib


Gem files will remain installed in /Users/adam/.rvm/gems/ruby-1.9.3-p327/gems/rmagick-2.13.1 for inspection.
Results logged to /Users/adam/.rvm/gems/ruby-1.9.3-p327/gems/rmagick-2.13.1/ext/RMagick/gem_make.out

Doesn't matter if I will install the gem through Gemfile or through Terminal, in both cases I get the same error output.

This is the version of imagemagick: imagemagick-6.8.0-10.

Could you give me please some tips or advance, where could be the issue? Thank you so much!

user984621
  • 46,344
  • 73
  • 224
  • 412

11 Answers11

74

rmagick has a problem working with imagemagick (>= 6.8.0-10) from homebrew.

You can either

update rmagick gem by

    bundle update rmagick

or manually symbol link some dylib to make it work:

    $ 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

After that gem install rmagick should work.

Check the discussion about this in homebrew/issues/16625

Update: Thanks @faraz for the nice one-liner command:

cd "`Magick-config --prefix`/lib"; ln -s libMagick++-Q8.7.dylib libMagick++.dylib; ln -s libMagickCore-Q8.7.dylib libMagickCore.dylib; ln -s libMagickWand-Q8.7.dylib libMagickWand.dylib
taiansu
  • 2,735
  • 2
  • 22
  • 29
  • 1
    This is the correct answer for installing ImageMagick 6.8.10 using Homebrew and for installing RMagick 2.13.1. My environment uses RVM with Ruby 1.9.3-p327. Citation: https://coderwall.com/p/wnomjg – scarver2 Jan 14 '13 at 21:40
  • 1
    For 8-bit quantum depth: `cd "\`Magick-conifig --prefix\`/lib"; ln -s libMagick++-Q8.7.dylib libMagick++.dylib; ln -s libMagickCore-Q8.7.dylib libMagickCore.dylib; ln -s libMagickWand-Q8.7.dylib libMagickWand.dylib` – fny Jan 21 '13 at 04:14
  • What @Sooie said. Updating `Gemfile.lock` helps with that. – maksimov Mar 20 '13 at 15:47
  • Correct answer here, though I had trouble because my imagemagick installation was not in /usr/local but in /users/... folder. Thanks anyway! – Francisco Quintero Apr 12 '13 at 17:30
  • I just want to say, that for me too, the folder is different. For me, the cd command is: cd /Users/jackquack/.homebrew/Cellar – hrdwdmrbl Apr 22 '13 at 17:04
  • bundle update rmagick worked for me, rmagick is now at 2.13.2. I'm using ruby 1.9.3-p448 – Sævar Aug 20 '13 at 09:40
  • 1
    None of this did help me on Mac OS Mavericks. What did was a reinstall of the new XCode command line tools: `xcode-select --install` – Hendrik Söbbing Oct 31 '13 at 10:11
  • Same as quantumpotato, I used only the first part (Update...) Not using homebrew, just normal install and cactuslab.com mac installer – CodeWalrus Jun 10 '14 at 09:29
  • Using 2.13.2 on Ubuntu 16.04 also fixed it for me. – Waseem Sep 07 '16 at 17:10
40

Mac OSX Sierra & Rails 5

brew unlink imagemagick
brew install imagemagick@6
brew link imagemagick@6 --force
Ashik Salman
  • 1,819
  • 11
  • 15
18

I had the same problem.

If you check the mkmf.log, you'll see the following error message:

ld: library not found for -lgomp
clang: error: linker command failed with exit code 1 (use -v to see invocation)
checked program was:
/* begin */
1: #include "ruby.h"
2: 
3: int main() {return 0;}
/* end */\

Here is how I solved it:

  1. Uninstall current version of ImageMagick:

    brew uninstall imagemagick

  2. Reinstall imagemagick without openmp support (this is the library responsible for lgomp):

    brew install imagemagick --disable-openmp

  3. Install rmagick:

    gem install rmagick

Thats it!

Joshua Pinter
  • 45,245
  • 23
  • 243
  • 245
tiagotam
  • 181
  • 1
  • 2
8

If you are using homebrew you just need to set the PKG_CONFIG_PATH

brew install imagemagick
PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick//6.8.9-1/lib/pkgconfig/ gem install rmagick
Dan Draper
  • 1,013
  • 9
  • 15
6

This worked for me in Catalina:

brew uninstall imagemagick
brew install imagemagick@6
export PATH="/usr/local/opt/imagemagick@6/bin:$PATH"
brew link --force imagemagick@6
brew install pkg-config
gem install rmagick
mabahamo
  • 684
  • 10
  • 10
5

Try installing version 6.7.7-6 of imagemagick since version 6.8.x breaks the rmagick gem.

cd /usr/local
git checkout 7d951fb /usr/local/Library/Formula/imagemagick.rb
brew install imagemagick
cdb
  • 55
  • 1
  • 7
5

As of 2017, all solutions suggested above not seem to work anymore, since ever Homebrew switched to ImageMagick 7.0.

Some workarounds provided here. https://github.com/rmagick/rmagick/issues/256

I just downgraded to ImageMagick 6.9.7-3 and gem install rmagick worked fine.

Quv
  • 2,958
  • 4
  • 33
  • 51
3

I am using this one-liner when I have issues with installing rmagick, which happens every time...

sudo C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.8.7-7/include/ImageMagick-6/ PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.8.7-7/lib/pkgconfig/ gem install rmagick

Make sure the version of imagemagick is correct, and you should be good to go. If you don't have imagemagick installed, do a brew install imagemagick.


Had to post this because I keep having issues installing this gem, and every time I forget how to do it.

Automatico
  • 12,420
  • 9
  • 82
  • 110
  • It's 2018 and I was able to install the gem using the following procedure, I had to adjust the path to most recent versions and worked like a charm. – Danilo Cabello Nov 06 '18 at 19:07
1

After you installed imagemagick, can you try

> gem pristine rmagick

Got it from this thread. Rails Rmagick gem. Hope it helps.

Community
  • 1
  • 1
RubyFanatic
  • 2,241
  • 3
  • 22
  • 35
  • 1
    When I try to run this command, I'll get: `ERROR: While executing gem ... (Gem::Exception) Failed to find gems ["rmagick"] >= 0` – user984621 Dec 20 '12 at 01:30
0

Alternatively you can drop back to an older version of ImageMagick. This thread has instructions on how to do it:

Now, to try and actually be useful I recommend you extract one of the older bottles into your Cellar and then do brew link imagemagick if you uninstalled the old version.

They are available here: http://sourceforge.net/projects/machomebrew/files/Bottles/imagemagick-6.7.7-6.snowleopard.bottle.3.tar.gz/download http://sourceforge.net/projects/machomebrew/files/Bottles/imagemagick-6.7.7-6.lion.bottle.3.tar.gz/download http://sourceforge.net/projects/machomebrew/files/Bottles/imagemagick-6.7.7-6.mountainlion.bottle.3.tar.gz/download

ced
  • 1,928
  • 4
  • 16
  • 16
0

This is the fix for High Sierra, Mojave and Catalina,

brew uninstall imagemagick
brew install imagemagick@6export PATH="/usr/local/opt/imagemagick@6/bin:$PATH"
brew link --force imagemagick@6
gem install rmagick

Source: https://blog.francium.tech/installing-rmagick-on-osx-high-sierra-7ea71f57390d

bragboy
  • 34,892
  • 30
  • 114
  • 171