Actualizar RMagick e Imagemagick es una experiencia dolorosa. He actualizado la versión de Imagemagick en mi Mac (MacOS El Capitan Versión 10.11.5) con homebrew para un proyecto en Ruby 2.3 a6.9.5-9
$ convert --version
Version: ImageMagick 6.9.5-9 Q16 x86_64 2016-09-09
Ahora, un proyecto anterior en Ruby 1.8.7 se niega a funcionar con el mensaje de error "esta instalación de RMagick se configuró con ImageMagick 6.8.9 pero ImageMagick 6.9.5-9 está en uso". Por lo tanto, desinstalé "rmagick", pero no se puede volver a instalar
$ gem install rmagick -v 2.16.0
Building native extensions. This could take a while...
ERROR: Error installing rmagick:
ERROR: Failed to build gem native extension.
checking for /usr/local/opt/gcc46/bin/gcc-4.6... yes
checking for Magick-config... yes
checking for outdated ImageMagick version (<= 6.4.9)... no
checking for presence of MagickWand API (ImageMagick version >= 6.9.0)... no
checking for Ruby version >= 1.8.5... yes
checking for stdint.h... no
checking for sys/types.h... no
checking for wand/MagickWand.h... no
Can't install RMagick 2.16.0. Can't find MagickWand.h.
Y si no se puede instalar, no se puede iniciar toda la aplicación. Probé todas las respuestas desde aquí , y ninguna de ellas funciona en MacOS :-( Reinstalé imagemagick y pkg-config con homebrew, e intenté varias versiones de RMagick sin éxito. 2.16.0 es la última versión de RMagick actualmente.
MagicWand parece usarse en la versión ImageMagick> 6.9, y se puede encontrar en la máquina:
find /usr/local -name MagickWand.h
=> /usr/local/Cellar/imagemagick/6.9.5-9_1/include/ImageMagick-6/wand/MagickWand.h
find /usr/local -name MagickWand.pc
=> /usr/local/Cellar/imagemagick/6.9.5-9_1/lib/pkgconfig/MagickCore.pc
No funciona incluso si especifico estas rutas durante la instalación de la gema (el mismo error que el anterior) :-(
C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.9.5-9_1/include/ImageMagick-6 PKG_CONFIG_PATH=/usr/local/lib/pkgconfig gem install rmagick
ACTUALIZAR:
El error solo ocurre para Ruby 1.8.7, es posible instalar RMagick para Ruby 2.0 y Ruby 2.3. Ruby 1.8.7 e ImageMagick 6.9.5 no parecen ser compatibles.
- Rubí 1.8.7 x
- Ruby 2.0.0 ✓
- Ruby 2.3.1 ✓
fuente
Respuestas:
Para resolver el problema en Mac OSX Sierra, High Sierra, El Capitan, Mojave y Catalina , puede hacer lo siguiente:
imagemagick@6
es decirkeg-only
, así que tendrás que forzar el enlace.fuente
brew unlink imagemagick
antes del enlace, pero funcionó. Muchas gracias.Tuve este mismo problema con ImageMagick 7.0.4-4 . La solución adecuada es instalar
imagemagick@6
. Encontré https://github.com/Homebrew/homebrew-core/pull/8756 útil si eliminó accidentalmenteimagemagick@6
o nunca lo instaló en primer lugar.fuente
brew install imagemagick@6 && brew link imagemagick@6 --force
lo resolvió para míbrew install --force imagemagick@6 && brew link imagemagick@6 --force
Using 6.9.8 Q16 from /usr/local/Cellar/imagemagick@6/6.9.8-3. checking for outdated ImageMagick version (<= 6.4.9)... yes checking for Ruby version >= 1.8.5... yes checking for stdint.h... no checking for sys/types.h... no checking for wand/MagickWand.h... no Can't install RMagick 2.15.0. Can't find MagickWand.h.
macOs Sierra:
fuente
En primer lugar, desvincule su imagen mágica instalada que no se instaló correctamente en la última mac high sierra mediante el uso.
luego instale el último imagemagic6 usando el siguiente comando
Luego instale gem rmagick usando el siguiente comando
Funcionará perfectamente bien.
fuente
sí, este resuelve mi problema:
MacOS X Sierra:
fuente
Muchas cosas han cambiado en ImageMagick 7, como este camino:
include/.../wand
ywand/MagickWand.h
está conectado en la gema mágica en este momento. En mi caso, no fue posible actualizar la gema ya que el proyecto es bastante antiguo. Así que terminé instalando una versión anterior de ImageMagic.Puede instalar la última versión de 6.xx:
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/6f014f2b7f1f9e618fd5c0ae9c93befea671f8be/Formula/imagemagick.rb
También puede anclarlo para su uso posterior:
brew pin imagemagick
fuente
Algo cambió con ImageMagick 7.0.4-4 para mí.
wand/MagickWand.h
no se pudo encontrar más:Todavía tenía ImageMagick 6.9.7-3 en mi sistema y cambié de nuevo con
Luego pude instalar
rmagick
sin problemas:fuente
RMagick depende de una versión desactualizada de imagemagick, versión 6. (ver más abajo) Homebrew ofrece esto como un paquete de solo barril, que puede instalar con:
La salida de compilación incluirá una sección de Advertencias (también disponible desde
brew info imagemagick@6
si borró la salida):En lugar de vincular-fuerza, que tiene el potencial de causar problemas con otro software que no admite las nuevas versiones de ImageMagick, se puede utilizar el sugerido
export
s para hacer la gema RMagick recoger la versión antigua, mientras que se basa:fuente
fuente
pkg-config
y funcionó.Todavía no tengo la reputación de dejar esto como un comentario que mejora otra respuesta, pero la respuesta de @ Evgeniy28 funcionó para mí en Sierra solo después de instalar pkg-config, que no viene instalado por defecto en una máquina Sierra nueva.
Entonces:
Éxito:
fuente
Siga a continuación y cambie algunas partes según sus necesidades.
fuente
Instale imagemagick versión 6 porque la versión 7 no es compatible:
$ brew install imagemagick@6
No debe vincular: forzar la versión anterior porque esto cambiará los binarios en su camino y los buenos
brew doctor
se quejarán.Consulte los encabezados y bibliotecas de la versión 6 que se instaló al construir la extensión nativa de la gema:
$ PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick@6/6.9.10-14/lib/pkgconfig/ gem install rmagick -v '2.16.0'
Nota: funcionó para mí sin indicar la carpeta lib e include porque pkgconfig es responsable de esto.
Nota: 6.9.10-14 es la última versión de imagemagick @ 6, pero no dude en cambiarla si necesita usar una versión diferente
fuente
Así es como lo resolví (después de muchos intentos y fallas) en macOS High Sierra 10.13.3 con Homebrew:
brew uninstall imagemagick
gem install rmagick
Si ya ha instalado una versión anterior de Imagemagick, esto debería funcionar: https://stackoverflow.com/a/41674363
fuente
en la versión 7.0.7-1 puede crear un enlace simbólico, pero su compilación fallará más adelante.
fuente
No hay necesidad de vincular o desvincular nada, seguir las instrucciones del script de instalación brew ayuda:
fuente
Obtuve el mismo error para la construcción de imágenes alpine 3.9. Viene con ImageMagick 7.0.8.38-r0
Para solucionarlo, use alpine 3.5 con ImageMagick 6.9.6.8-r1 :
O instale ImageMagick 6.9.6.8-r1 con el repositorio de paquetes para 3.5:
Hay un problema abierto en el repositorio de rmagick con respecto a las compilaciones fallidas para ImageMagick 7.0.x. así que espero que se arregle pronto.
fuente
Algo estaba muy mal en mi sistema, tan mal que estaba completamente jodido, pero finalmente pude instalar RMagick para Ruby 1.8.7 nuevamente después de instalar
La instalación de una nueva versión de Ruby con RVM
rvm install 1.8.7
también instaló un nuevo compilador de GCC: eliminó una versión anterior de GCC 4.6 e instaló la versión 4.9 de GCC. Aparentemente, GCC no pudo encontrar los encabezados correctos a pesar de pkg-config.fuente
Explico completamente el proceso de instalación en ImageMagick install en centos .
de todos modos ...
después de instalar Instale la biblioteca PHP Imagick & ImageMagick-devel & ImageMagick como se muestra a continuación:
ir a / usr / include
Importante: copie la carpeta ImageMagick de "/ usr / include" a "/ usr / local / include" para ImageMagick encuentre "MagickWand.h"
Probé este cambio en imagick-3.4.3 (ImageMagick-7) y centos 6.5 y php56 y funciona perfectamente ...
Si ya ha instalado "ImageMagick" varias veces, primero quítelos todos y busque las carpetas "ImageMagick" e "imagick" y límpielas todas y continúe el proceso de instalación con este cambio.
Use el siguiente comando para buscar un archivo o carpeta:
y continúe con la instalación
antes de las líneas siguientes, no se olvide: vaya a "php.ini", encuentre "disable_functions" y limpie "proc_open, popen, proc_close", ya que imagick necesita estas funciones, después de la instalación completa puede agregar estas funciones a su " disable_functions "en el archivo" php.ini ".
Buena suerte...
fuente
Para la versión de Ubuntu> 12 y que no usa homebrew,
Si obtiene archivos '7z' en lugar de archivos 'tar.gz' en el enlace wget, entonces
Luego puede reanudar su paquete para RMagick.
fuente
Primero, no necesita desinstalar imagemagick si tiene un 6.x instalado, como se muestra a continuación. Puede ver que el "principal" actual es
7.0.7-8
pero6.9.1-10
sigue ahí.Si no tiene una versión anterior de 6.x, entonces instalar ImageMagick @ 6.
En segundo lugar, no fuerce la imagen del enlace , especialmente no 6. EDITAR: Ver ¹
Debe configurar PKG_CONFIG_PATH además de las banderas --with-opt- *.
Esto funciona para mí en High Sierra con la configuración de preparación antes mencionada en Ruby 1.9.3-p551:
La construcción de documentos no funciona, pero son intrascendentes.
¹: La construcción funciona, la ruta dylib que RMagick está buscando es incorrecta. Problema planteado # 278 para aclarar si esto se puede solucionar. De lo contrario, es necesario el enlace manual de libMagickWand, etc. Todavía podría ser más seguro vincular manualmente las bibliotecas específicas que un
brew link --force
pensamiento.fuente