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.