Dónde encontrar las dependencias que faltan (imagemagick y m17n)


7

Estoy compilando Emacs desde la fuente y no puedo entender qué bibliotecas necesito para habilitar imagemagick y m17n . Tengo imagemagick y libm17n-dev instalados (estoy en Debian).

Mi ./configureguión dice:

  Does Emacs use imagemagick?                             no
  [...]
  Does Emacs use -lm17n-flt?                              no

Necesitamos más información Debe mirar el archivo config.log que contiene detalles y resultados sobre las pruebas que ejecutó el script de configuración. Busque imagemagick y m17n-flt. Publique detalles sobre las pruebas fallidas o las secciones recortadas del registro.
dfeich

He instalado libmagickcore-dev y libmagick ++ - dev, y ahora configuro los hallazgos de imagemagick. Todavía no hay suerte con m17n-flt (no hay tal paquete en Debian).
Łukasz Gruner

1
¿En qué versión de Debian estás? m17n-flt es parte delibm17n y los encabezados están incluidos enlibm17n-dev .
Rekado

44
El procedimiento más seguro para resolver problemas de dependencia al compilar desde las fuentes (incluyendo Git) es correr apt-get build-dep emacs24, o si se está utilizando Wheezy, apt-get build-dep emacs23. Eso debería instalar todos los paquetes de dependencia y resolver el problema. Si planea compilar Emacs 24.4 o superior, verifique que el libacl1-devpaquete se haya instalado; de lo contrario, deberá instalarlo manualmente.
Desnuda

Respuestas:


6

Después de rastrear el configureguión, creo que he encontrado el paquete faltante: libmagickwand-dev. En mi máquina, después de instalar este paquete, ./configurefinalmente dice:

  Does Emacs use imagemagick?                             yes

NB1: al igual que con otras características (por ejemplo, libxml2-devpara eww), no entiendo el propósito de --with-feature:

  • Si las bibliotecas y los encabezados de desarrollo están en su sistema, configurehabilitará la función incluso si no lo solicita explícitamente --with-feature;
  • Si las bibliotecas y los encabezados de desarrollo no están en su sistema, configureignorará --with-featurey saldrá con el estado 0.

NB2: Esto ha sido probado en Ubuntu 14.04; libmagickwand-dev parece existir también en Debian.

NB3: Una "metodología" general para descubrir los paquetes necesarios del configurescript:

  • buscar configure"imagemagick"
  • encuentra estos fragmentos:

    IMAGEMAGICK_MODULE="Wand >= 6.3.5 Wand != 6.8.2"
    ...
    if "$PKG_CONFIG" --exists "$IMAGEMAGICK_MODULE"...
    
  • apt-cache search Wand

    • libmagickwand-dev - image manipulation library - development files

4

Para evitar tener que rastrear los paquetes que se requieren para construir Emacs, use apt-get para instalarlos por usted.

apt-get build-dep emacs

En realidad, esto puede no ser suficiente, ya que esto solo instala las bibliotecas que el responsable de Debian ha elegido para vincular Emacs. Creo que necesitas:

apt-get install libm17n-dev libmagickcore-dev

Sin embargo, después de esto todavía recibí use -lm17n-flt? noincluso cuando lo usé explícitamente --with-m17n-flt. Y en realidad no instalé libmagickcore-dev` porque resultó en un conflicto.


Esto solo convierte un comentario de arriba en una respuesta.
tarsius

1

Como la respuesta existente deja de lado cómo compilar con m17nsoporte, agrego esto para responder eso. En mi sistema m17nno se usa y otftampoco se usa. Para construir con m17nsoporte, instale las bibliotecas necesarias para m17ny también para otf. Entonces Emacs se compilará con ambos.

No sé por qué compilar m17nrequiere otfpero esto funciona :)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.