ruby-on-rails ruby rvm rmagick

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:

  1. Eliminar la versión instalada actualmente de imagemagick con homebrew

brew uninstall imagemagick

  1. Instala imagemagick 6:

brew install imagemagick@6

  1. 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