¿Emacs no puede cargar imagemagick?

7

Estoy en una Mac y tengo problemas con Emacs y libmagick.

En este momento, Emacs sale e imprime:

  Library not loaded: /usr/local/opt/imagemagick/lib/libMagickWand-6.Q16.2.dylib
  Referenced from: /usr/local/Cellar/emacs-plus/24.5/Emacs.app/Contents/MacOS/Emacs
  reason: image not found

Sin embargo, ese archivo no existe.

[I] bheesham.persaud $ file /usr/local/opt/imagemagick/lib/libMagickWand-6.Q16.2.dylib
/usr/local/opt/imagemagick/lib/libMagickWand-6.Q16.2.dylib: Mach-O 64-bit dynamically linked shared library x86_64

Aparece un error similar en el cuadro de diálogo Informar problema de macOS al intentar iniciar una GUI de Emacs.

¿Qué debo hacer para que Emacs reconozca la biblioteca de imágenes mágicas?

Información Adicional:

Process:               Emacs [96152]
Path:                  /usr/local/Cellar/emacs-plus/24.5/Emacs.app/Contents/MacOS/Emacs
Identifier:            org.gnu.Emacs
Version:               Version 24.5 (9.0)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Emacs [96152]
Bheesham Persaud
fuente
1
Parece que Emacs está buscando libMagickCorey usted ha demostrado que libMagickWandexiste. Además, ¿puedes dar un poco más de historia? ¿Es la primera vez que instala emacs 24.5? Si no, ¿estaba usando esta versión antes y de repente dejó de funcionar?
nispio
Tuve este problema una vez. ¿Actualizaste imagemagick? Si es así, tendría que reinstalar emacs con la --with-imagemagickopción si desea que vuelva a funcionar.
Chakravarthy Raghunandan
@ChakravarthyRaghunandan que parece haber funcionado, ¡gracias!
Bheesham Persaud
@nispio Derecha. Parece que tenía dos versiones diferentes de Emacs instaladas, y ese error se copió del cuadro de diálogo Informe de problemas de Mac OS. El archivo que hice statfue del error que dio la línea de comando Emacs, que resultó ser una versión diferente.
Bheesham Persaud
@ChakravarthyRaghunandan: ¿podría publicar su comentario como respuesta para que OP pueda aceptarlo? Sería útil agregar un poco más de explicación / contexto para futuros lectores.
Dan

Respuestas:

4

El problema generalmente ocurre cuando ha compilado emacs con la --with-imagemagickopción de configuración. Aquí, emacs se compila con una versión específica de imagemagick y el OP actualizó su imagemagick, pero emacs aún espera la versión anterior de imagemagick y no puede encontrar el antiguo ejecutable y, por lo tanto, explota al inicio con un mensaje de error.

Puede resolver este problema creando un alias para que imagemagick apunte a la ruta del ejecutable anterior (la versión anterior de imagemagick no se elimina de forma predeterminada por homebrew) O simplemente puede reinstalar emacs desde homebrew con la --with-imagemagickopción y dejar que emacs se compile última versión de imagemagick. Eso arreglará el error.

Chakravarthy Raghunandan
fuente