¿Cómo instalo GnuTLS para Emacs 25.1 en Windows?


19

Acabo de actualizar Emacs en mi máquina con Windows 10 de 24.5 a 25.1. Para Emacs 24.5 tenía GnuTLS correctamente configurado y para 25.1 hice lo que pensé que recordaba que hice:

  1. Obtuve los binarios de Emacs preconstruidos de la página de descarga del sitio web de GNU Emacs . Estoy usando Windows de 32 bits, así que obtuve la versión i686 de Emacs.

  2. Obtuve una copia de GnuTLS de ezwinports y extraje el archivo zip en el mismo directorio que Emacs: la forma en que está organizado el zip de gnutls significa que de esta manera tanto el dll como el exe para gnutls terminan en el mismo directorio que el exe de Emacs. (Obtuve la versión 3.3.11 esta vez; no recuerdo qué versión de GnuTLS tenía cuando tenía la versión 24.5 de Emacs).

Eso no funcionó esta vez. gnutls-available-pvuelve nil, el administrador de paquetes solo puede conectarse a repositorios http y no a https, eww tampoco puede manejar https.

¿Cómo configuro GnuTLS para Emacs 25.1? ¿Estoy recordando mal lo que hice por 24.5? Tal vez los binarios del sitio web de GNU Emacs están compilados sin GnuTLS y para 24.5 en realidad obtuve binarios de otro lugar ...


Eliminé mi respuesta original, ya que no abordaba su versión de Emacs. En su pregunta, tal vez podría aclarar que copió los archivos en ./bin
henning - reinstalar Monica el

@henning: Eso es lo que la oración "la forma en que se organiza el gnutls zip significa que de esta manera tanto el dll como el exe para gnutls terminan en el mismo directorio que el del Emacs exe" debía transmitir, intentaré reformularlo de una manera más clara mañana.
Omar

Parece más un problema en el Emacs 25.1 que en los gnutls en sí, porque hoy he descargado Emacs 25.1 y tengo el mismo problema. Emacs 24.1 llama a gnutls con las opciones: --insecure -p 443 --protocols ssl3 mientras que 25.1 lo llama con: -x509cafile nil -p 443. Podría tener algo que ver con estas diferentes opciones de llamada.
Romario

2
No tengo los detalles a mano, pero lo examiné brevemente antes. Creo que Emacs 25.1 espera libgnutls-30.dll pero solo libgnutls-28.dll está empaquetado por ezwinports en este momento.
Stuart Hickinbottom

Respuestas:


29

@StuartHickinbottom explicó lo que estaba haciendo mal: usar libgnutls-28.dllcuando Emacs 25.1 requiere lo más nuevo e incompatible libgnutls-30.dll. Luego se trataba de encontrar binarios libgnutls-30.dlly otras bibliotecas necesarias. ¡Afortunadamente Phillip Lord ha compilado versiones de Windows de todas las bibliotecas y dependencias de GnuTLS y muchas otras bibliotecas que pueda desear para Emacs! Están disponibles aquí : obtenga emacs-25-i686-deps.zipsi usa Windows de 32 bits y obtenga emacs-25-x86_64-deps.zipsi usa 64 bits; luego descomprima en la carpeta raíz de su instalación de Emacs (para que la bincarpeta de los archivos zip se descomprima en la bincarpeta de su instalación de Emacs, etc.)

EDITAR: descubrí cómo averiguar qué versión de una biblioteca espera Emacs: busque en la variable dynamic-library-alist.


1
Gracias por la edición: nunca supe de esa variable, pero hace que el seguimiento de este tipo de cosas sea mucho más fácil.
Stuart Hickinbottom

En realidad, no compilé los binarios, solo los comprimí. Todos deberían funcionar. Y necesito mejorar el archivo README. Es demasiado complicado.
Phil Lord,

Entonces supongo que quise decir "compilado" en el sentido no computacional de armar una lista de cosas de varias fuentes, @PhilLord :)
Omar

confirmado para trabajar para Emacs 25.2
Lorenzo Gatti

1
@feklee Para Emacs-26, simplemente desempaquete la cremallera y listo, al menos esa es la teoría. Sí, de acuerdo, README necesita una actualización. No hay ninguno en este momento. Yo siendo basura.
Phil Lord
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.