Я только что обновил Emacs на своем компьютере с Windows 10 с 24,5 до 25,1. Для Emacs 24.5 я правильно настроил GnuTLS, а для 25.1 я сделал то, что, как мне показалось, я вспомнил:
Получил предварительно скомпилированные двоичные файлы Emacs со страницы загрузки сайта GNU Emacs . Я использую 32-битную Windows, поэтому я получил версию Emacs для i686.
Получил копию GnuTLS из ezwinports и распаковал zip-файл в ту же директорию, что и Emacs. То, как организован почтовый индекс gnutls, означает, что таким образом и dll-файлы, и exe-файлы для gnutls попадают в тот же каталог, что и Emacs-exe-файлы. (Я получил версию 3.3.11 на этот раз; я не помню, какую версию GnuTLS я имел, когда у меня была версия 24.5 Emacs.)
Это не сработало на этот раз. gnutls-available-p
возвращается nil
, менеджер пакетов может подключаться только к http-репозиториям, а не к https, eww также не может обрабатывать https.
Как мне настроить GnuTLS для Emacs 25.1? Я неправильно помню, что я сделал для 24,5? Возможно, двоичные файлы с веб-сайта GNU Emacs скомпилированы без GnuTLS, и для 24.5 я фактически получил двоичные файлы откуда-то еще ...
Ответы:
@StuartHickinbottom объяснил, что я делал неправильно: использовать,
libgnutls-28.dll
когда Emacs 25.1 требует более нового и несовместимогоlibgnutls-30.dll
. Тогда это был вопрос поиска двоичных файловlibgnutls-30.dll
и других необходимых библиотек. К счастью Phillip Господь собрал версию Windows , из всех GnuTLS библиотек и зависимостей и многих других библиотек вы можете захотеть для Emacs! Они доступны здесь : получить,emacs-25-i686-deps.zip
если вы используете 32-битную Windows и получить,emacs-25-x86_64-deps.zip
если вы используете 64-битную; затем распакуйте в корневую папку вашей установки Emacs (чтобыbin
папка с zip-файлами распаковывалась вbin
папку вашей установки Emacs и т. д.)РЕДАКТИРОВАТЬ: я выяснил, как узнать, какую версию библиотеки ожидает Emacs: посмотрите в переменную
dynamic-library-alist
.источник