Search code examples
ruby-on-railsimagemagickrmagick

Error installing rmagick gem in RAILS 3.2.13


any ideas why I'm getting this error:

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

    /Users/xiruki/.rvm/rubies/ruby-1.9.3-p448/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 /usr/local/bin/gcc-4.2... 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/xiruki/.rvm/rubies/ruby-1.9.3-p448/bin/ruby
    --with-MagickCorelib
    --without-MagickCorelib
    --with-Magicklib
    --without-Magicklib
    --with-Magick++lib
    --without-Magick++lib


Gem files will remain installed in /Users/xiruki/.bundler/tmp/635/gems/rmagick-2.13.1 for inspection.
Results logged to /Users/xiruki/.bundler/tmp/635/gems/rmagick-2.13.1/ext/RMagick/gem_make.out

An error occurred while installing rmagick (2.13.1), and
Bundler cannot continue.
Make sure that `gem install rmagick -v '2.13.1'` succeeds
before bundling.

Tried a lot of workarounds but didn't work.

Tried to make brew doctor and brew update successful but no luck.

I had also successfully installed imagemagick using brew install imagemagick

I've also tried to uninstall and install again imagemagick by doing the ff:

brew uninstall imagemagick
brew install --fresh imagemagick

But seems like everything is not still working upon doing the bundle install or bundle update rmagick for my app.

I've tried doing sudo gem install rmagick and the weird thing is that it was successfully installed.

But can't bundle my app because it's stopping from the error above.

My app is trying to install rmagick-2.13.1

Upon viewing the version installed in my local, the version installed is 2.13.2

Think i badly need to install the required version for the app.

I'm using MAC btw.


Solution

  • Ok, so I've just figured this out as I was struggling with the same issue:

    Get back to a fresh imagemagick

    Do this:

    cd /usr/local/Cellar/imagemagick/6.8.6-3/lib
    ln -s libMagick++-6.Q16.dylib libMagick++.dylib
    ln -s libMagickCore-6.Q16.dylib libMagickCore.dylib
    ln -s libMagickWand-6.Q16.dylib libMagickWand.dylib
    

    You may or may not need to brew install libtool

    then do this:

    ln -s /usr/local/Cellar/libtool/2.4.2/lib/libltdl.7.dylib /usr/local/lib/libltdl.7.dylib
    

    Then gem install rmagick -v '2.13.1'

    And that should work, so then bundle

    Good luck!