I installed ImageMagick through, (Using ImageMagick 6.7.3-7)
./configure --prefix=/usr && make && make install
When I try to
gem install imagemagick
I get
Building native extensions. This could take a while...
ERROR: Error installing rmagick:
ERROR: Failed to build gem native extension.
/usr/bin/ruby extconf.rb
checking for Ruby version >= 1.8.5... yes
checking for gcc... yes
checking for Magick-config... yes
checking for ImageMagick version >= 6.4.9... yes
checking for HDRI disabled version of ImageMagick... yes
Package MagickCore was not found in the pkg-config search path.
Perhaps you should add the directory containing `MagickCore.pc'
to the PKG_CONFIG_PATH environment variable
No package 'MagickCore' found
Package MagickCore was not found in the pkg-config search path.
Perhaps you should add the directory containing `MagickCore.pc'
to the PKG_CONFIG_PATH environment variable
No package 'MagickCore' found
Package MagickCore was not found in the pkg-config search path.
Perhaps you should add the directory containing `MagickCore.pc'
to the PKG_CONFIG_PATH environment variable
No package 'MagickCore' found
Package MagickCore was not found in the pkg-config search path.
Perhaps you should add the directory containing `MagickCore.pc'
to the PKG_CONFIG_PATH environment variable
No package 'MagickCore' found
checking for stdint.h... yes
checking for sys/types.h... yes
checking for wand/MagickWand.h... no
Can't install RMagick 2.13.1. Can't find MagickWand.h.
*** 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
--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=/usr/bin/ruby
This is despite the fact that MagickWand.h is already in the system in /usr/include/ImageMagick/wand/MagickWand.h
. So the question is, how do I actually get the compiler to look in there?
Best Answer
Had the same problem on CentOS using latest everything (as of Dec 2011), and fixed it with:
in my .bashrc file to pick up MagickCore.pc, then created two symlinks:
And voila, the MagickWand.h was found, the MagickCore.pc was picked up... gem installed successfully.
I imagine another solution would be to modify the configure options set during ImageMagick installation, but I'm not enough of a sysadmin to be clear what the right option and location would be for these files. After 45 minutes of googling around, I couldn't figure where these files are supposed to live, to be automatically picked up by the gem install make system.
Cheers!
EDIT: 2014-10-01
Just did this again for CentOS 7, and the
ln
commands above were not needed. However, I ran into an issue where I got "Package MagickCore was not found in the pkg-config search path." on runningsudo gem install rmagick
.The problem was the environment reset in /etc/sudoers. After running
sudo visudo
to edit the sudoers file, I addedDefaults env_keep += "PKG_CONFIG_PATH"
to the appropriate section, updated the secure path to include /usr/local/bin, and then installing worked like a charm.