ruby on rails - Bundle no puede instalar RMagick gem en Mac OSX 10.7
ruby-on-rails rvm (12)
He instalado ImageMagick con el script de instalación de ImageMagick https://github.com/maddox/magick-installer . Estoy en OSX Lion 10.7, usando RVM, Ruby 1.9.3p125.
El problema parece ser con MagickWand.h aquí está el registro completo
/Users/pdjimeno/.rvm/rubies/ruby-1.9.3-p125/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/bin/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
--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/pdjimeno/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
1) instalar por instalador
http://cactuslab.com/imagemagick/
2) intente gema instalar rmagick
Si está comprobando la varita / MagickWand.h ... no
tipo
mdfind MagickWand.h
encontrar algo como
/Users/user/ImageMagick-6.8.3/include/ImageMagick-6/wand/MagickWand.h
y escriba en la terminal
C_INCLUDE_PATH=/Users/user/ImageMagick-6.8.3/include/ImageMagick-6/ gem install rmagick
si, después de eso, tiene este error (porque lo tenía) "El paquete MagickCore no se encontró en la ruta de búsqueda de pkg-config".
tipo
mdfind MagickCore.pc
encuentra algo como /opt/ImageMagick/lib/pkgconfig/MagickCore.pc
y finalmente en tipo terminal:
PKG_CONFIG_PATH=/opt/ImageMagick/lib/pkgconfig/ gem install rmagick
Corrija esta configuración en la ruta de inclusión de su instalación actual de imagemagick:
Instalar ImageMagick con cerveza
brew install imagemagick
encontrar biblioteca
$ mdfind MagickWand.h
/usr/local/Cellar/imagemagick/6.7.5-7/include/ImageMagick/wand/MagickWand.h
Instalar gema rmagick
$ C_INCLUDE_PATH=/path gem install rmagick
ejemplo:
$ C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.7.5-7/include/ImageMagick/ gem install rmagick
Cuando me topé con este problema, se quejaba de que no podía encontrar MagickCore.pc, así que hice esto;
$ mdfind MagickCore.h
/usr/local/Cellar/imagemagick/6.8.0-10/include/ImageMagick/magick/MagickCore.h
/usr/local/Cellar/imagemagick/6.7.7-6/include/ImageMagick/magick/MagickCore.h
$ export PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.8.0-10/lib/pkgconfig/
$ gem install rmagick
¡Y funcionó!
En el momento de escribir esto, imagemagick 7 es la versión predeterminada instalada a través de brew install imagemagick
, pero es incompatible con rmagick
. Soluciona esto por:
- Eliminar la versión instalada actualmente de imagemagick con homebrew
brew uninstall imagemagick
- Instala imagemagick 6:
brew install imagemagick@6
- Ejecute gem install con la variable pkgconfig (puede que deba
sudo
dependiendo de su configuración)
PKG_CONFIG_PATH=/usr/local/opt/imagemagick@6/lib/pkgconfig gem install rmagick
La solución de Andrey Yasinishyn funcionó para mí:
mdfind MagickCore.pc
encuentra algo como /opt/ImageMagick/lib/pkgconfig/MagickCore.pc
y finalmente en tipo terminal:
PKG_CONFIG_PATH=/opt/ImageMagick/lib/pkgconfig/ gem install rmagick
Le sugiero que use brew para administrar sus dependencias binarias. Puedes instalar fácilmente imageMagick con brew , así:
brew install imagemagick
Esto es lo que tengo en mi sistema:
imagemagick 6.7.1-1
http://www.imagemagick.org
Depends on: jpeg, libtiff, little-cms, jasper
/usr/local/Cellar/imagemagick/6.7.1-1 (1389 files, 32M)
http://github.com/mxcl/homebrew/commits/master/Library/Formula/imagemagick.rb
Y tengo la misma configuración que tiene usted en términos de máquina y versión ruby.
Lo intenté todo, pero lo que terminó siendo la solución fue:
brew uninstall --force imagemagick
# elimina todas las versiones
entonces
brew install imagemagick@6
finalmente
gem install rmagick
Para los usuarios de El Capitán,
Se deben incluir PKG_CONFIG_FILE y C_INCLUDE_PATH. El comando que funcionó para mí es:
sudo C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.9.2-4/include/ImageMagick/ PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.9.2-4/lib/pkgconfig/ gem install rmagick
Por lo que vale la pena tuve este problema con Ruby ree-1.8.7-2012-02. Así es como lo arreglé:
Quité ImageMagick y lo reinstalé
brew remove imagemagick
brew install imagemagick --disable-openmp --build-from-source
Luego agregué estos enlaces simbólicos en /usr/local/Cellar/imagemagick/6.8.9-7/lib/
ln -s libMagick++-6.Q16.5.dylib libMagick++.dylib
ln -s libMagickCore-6.Q16.2.dylib libMagickCore.dylib
ln -s libMagickWand-6.Q16.2.dylib libMagickWand.dylib
Luego quité la versión de Ruby y la reinstalé
rvm remove ree-1.8.7-2012-02
rvm install ree-1.8.7-2012-02
Finalmente se instaló la gema.
gem install rmagick -v ''2.12.2''
Espero que esto ayude.
Si está obteniendo el paquete xxx
no se ha encontrado.
Encuentre el paquete y agregue su ruta dir. A la variable PKG_CONFIG_PATH
en su ~/.bash_login
o ~/.bash_profile
.
Ejemplo:
Si recibe el error:
Package MagickCore was not found in the pkg-config search path.
Encuentra donde está el archivo:
$ mdfind magickcore.pc
/usr/local/homebrew/Cellar/imagemagick/6.7.7-6/lib/pkgconfig/MagickCore.pc
Agregue a su bash_login o bash_profile:
export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig:/usr/local/homebrew/Cellar/imagemagick/6.7.7-6/lib/pkgconfig/:$PKG_CONFIG_PATH"
recuerde de origen el archivo bash_login / perfil
También encontré una solución usando homebrew:
brew remove --force pkg-config
brew install pkg-config
y entonces
gem install rmagick
Tuve que agregar ambas variables env para que funcionara. Algo como esto
C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.7.7-6/include/ImageMagick/ PKG_CONFIG_PATH=/opt/local/lib/pkgconfig:/usr/local/Cellar/imagemagick/6.7.7-6/lib/pkgconfig/ gem install rmagick