Windows에 GnuTLS for Emacs 25.1을 어떻게 설치합니까?


19

Windows 10 컴퓨터에서 Emacs를 24.5에서 25.1로 업그레이드했습니다. Emacs 24.5의 경우 GnuTLS가 올바르게 설정되었고 25.1의 경우 내가 생각한 것을 수행했습니다.

  1. GNU Emacs 웹 사이트의 다운로드 페이지 에서 미리 빌드 된 Emacs 바이너리를 얻었습니다 . 32 비트 Windows를 사용하고 있기 때문에 i686 버전의 Emacs를 얻었습니다.

  2. ezwinports 에서 GnuTLS 사본을 가져 와서 zip 파일을 Emacs와 동일한 디렉토리에 추출했습니다. 즉, gnutls zip이 구성되는 방식은 dll 및 gnutls에 대한 exe가 Emacs exe와 동일한 디렉토리에 있음을 의미합니다. (이번에는 3.3.11 버전이 있습니다. 24.5 버전의 Emacs를 사용할 때 어떤 GnuTLS 버전이 있는지 기억이 나지 않습니다.)

이번에는 효과가 없었습니다. gnutls-available-preturns nil, 패키지 관리자는 http 리포지토리에만 연결할 수 있고 https 리포지토리에는 연결할 수 없으며 eww도 https를 처리 할 수 ​​없습니다.

Emacs 25.1 용 GnuTLS를 어떻게 설정합니까? 24.5에 대해 내가 한 일을 잘못 기억하고 있습니까? 어쩌면 GNU Emacs 웹 사이트의 바이너리는 GnuTLS없이 컴파일되어 있고 24.5는 실제로 다른 곳에서 바이너리를 얻었습니다 ...


귀하의 Emacs 버전을 다루지 않았기 때문에 원래 답변을 삭제했습니다. 귀하의 질문에, 당신은 아마 당신이 ./bin에 파일을 복사 명확히 할 수
분석 재개 모니카 - 헤닝

@henning : "너트 zip이 구성되는 방식은 너트와 너트의 exe가 emacs exe와 같은 디렉토리에 들어간다"라는 문장을 전달한다는 의미입니다. 내일 더 분명하게.
Omar

오늘 나는 Emacs 25.1을 다운로드했고 같은 문제가 있었기 때문에 gnutls 자체가 아니라 Emacs 25.1의 문제처럼 보입니다. Emacs 24.1은 --insecure -p 443 --protocols ssl3 옵션을 사용하여 gnutls를 호출하지만 25.1은 -x509cafile nil -p 443을 사용하여 호출합니다. 이러한 다른 호출 옵션과 관련이있을 수 있습니다.
Romario

2
세부 사항은 없지만이 부분을 간단히 살펴 보았습니다. Emacs 25.1은 libgnutls-30.dll을 기대하고 있지만 libgnutls-28.dll 만 현재 ezwinports에 의해 패키지되어 있다고 생각합니다.
Stuart Hickinbottom

답변:


29

@StuartHickinbottom은 내가 잘못하고있는 것을 설명했습니다 : libgnutls-28.dllEmacs 25.1이 더 새롭고 호환되지 않을 때 사용 하십시오 libgnutls-30.dll. 그런 다음 바이너리 libgnutls-30.dll및 기타 필요한 라이브러리 를 찾는 문제였습니다 . 고맙게도 필립로드는 모든 GnuTLS 라이브러리와 종속성 Emacs에 필요한 다른 많은 라이브러리의 Windows 버전을 컴파일했습니다 ! 그들은 사용할 수 있습니다 여기에 : 얻을 emacs-25-i686-deps.zip당신이 사용하는 경우 윈도우를 32 비트 및 취득 emacs-25-x86_64-deps.zip64 비트를 사용하는 경우; 그런 다음 Emacs 설치의 루트 폴더에서 압축을 풉니 다 ( binzip 파일의 bin폴더가 Emacs 설치 폴더 로 압축 해제됩니다 ).

편집 : 나는 Emacs가 기대하는 라이브러리 버전을 찾는 방법을 알아 냈습니다 : 변수를보십시오 dynamic-library-alist.


1
편집 해 주셔서 감사합니다. 변수에 대해 전혀 몰랐지만 이런 유형의 추적이 훨씬 쉬워졌습니다.
Stuart Hickinbottom

실제로 바이너리를 컴파일하지 않고 압축했습니다. 그들은 모두 작동해야합니다. 그리고 README를 개선해야합니다. 너무 복잡합니다.
Phil Lord

그런 다음 컴퓨터가 아닌 의미에서 다양한 소스의 목록을 함께 작성한다는 의미에서 "컴파일"을 의미 한 것 같습니다. @PhilLord :)
Omar

Emacs 25.2
Lorenzo Gatti

1
@feklee Emacs-26의 경우, 압축을 풀고 멀리 가십시오. 최소한 이것이 이론입니다. 예, README를 업데이트해야합니다. 현재는 없습니다. 나는 쓰레기이다.
Phil Lord
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.