WindowsにEmacs 25.1用のGnuTLSをインストールするにはどうすればよいですか?


19

Windows 10マシンでEmacsを24.5から25.1にアップグレードしました。Emacs 24.5ではGnuTLSを正しくセットアップし、25.1では私が覚えていたと思ったことをやった:

  1. GNU Emacs Webサイトのダウンロードページから、事前に構築されたEmacsバイナリを入手しました。32ビットWindowsを使用しているので、Emacsのi686バージョンを入手しました。

  2. GnuTLSのコピーをezwinportsから取得し、zipファイルをEmacsと同じディレクトリに抽出しました-gnutls zipの編成方法は、gnutlsのdllとexeの両方がEmacs exeと同じディレクトリに配置されることを意味します。(今回はバージョン3.3.11を入手しました。バージョン24.5のEmacsを使用していたときに、どのバージョンのGnuTLSを使用したか覚えていません。)

今回はうまくいきませんでした。gnutls-available-pを返しますnil。パッケージマネージャは、httpリポジトリではなくhttpリポジトリにのみ接続できます。ewwもhttpsを処理できません。

Emacs 25.1用にGnuTLSをセットアップするにはどうすればよいですか?24.5で行ったことを思い出しませんか?たぶん、GNU Emacs WebサイトからのバイナリはGnuTLSなしでコンパイルされており、24.5では実際にどこか別の場所からバイナリを取得しました...


Emacsのバージョンに対応していないため、元の回答を削除しました。あなたの質問では、あなたは多分あなたは./binにファイルをコピーしたことを明らかにできた
REINSTATEモニカ-ヘニング

@henning:それは、「gnutls zipの編成方法は、この方法でgnutlsのdllとexeの両方がEmacs exeのディレクトリと同じディレクトリに収まることを意味する」ということを伝えようとしていることを意味します。明日はより明確な方法で。
オマー

今日はEmacs 25.1をダウンロードして同じ問題が発生したため、これはgnutls自体ではなくEmacs 25.1の問題のように見えます。Emacs 24.1は、-insecure -p 443 --protocols ssl3オプションを使用してgnutlsを呼び出しますが、25.1は-x509cafile nil -p 443を使用してそれを呼び出します。これらの異なる呼び出しオプションと関係がある可能性があります。
ロマリオ

2
私には詳細はありませんが、これについては以前に簡単に調べました。Emacs 25.1はlibgnutls-30.dllを想定していますが、現時点ではezwinportsによってパッケージ化されているのはlibgnutls-28.dllのみです。
スチュアートヒッキンボトム

回答:


29

@StuartHickinbottomは、私が間違っていたことを説明しました:libgnutls-28.dllEmacs 25.1がより新しい互換性のないものを必要とするときに使用しlibgnutls-30.dllます。それから、それはバイナリlibgnutls-30.dllと他の必要なライブラリを見つけることの問題でした。ありがたいことに、Phillip Lordは、すべてのGnuTLSライブラリと依存関係、および Emacsに必要な他の多くのライブラリのWindowsバージョンをコンパイルしました!彼らが用意されていますここ:取得emacs-25-i686-deps.zipあなたは32ビット版のWindowsを使用している場合とget emacs-25-x86_64-deps.zipあなたは、64ビットを使用する場合、次に、Emacsインストールのルートフォルダーで解凍します(binzipファイルのbinフォルダーがEmacsインストールのフォルダーなどに解凍されるように)。

編集:Emacsが期待しているライブラリのバージョンを見つける方法を見つけました:変数を見てくださいdynamic-library-alist


1
編集してくれてありがとう-私はその変数については知りませんでしたが、このタイプのことを追跡するのがずっと簡単になります。
スチュアートヒッキンボトム

実際、私はバイナリをコンパイルせず、それらを圧縮しただけです。すべて動作するはずです。そして、READMEを改善する必要があります。複雑すぎます。
フィルロード

それから私は、私は一緒に入れの非コンピュータセンスさまざまなソースからのもののリスト、@PhilLord :)に「コンパイルする」と推測する
オマール・

Emacs 25.2で動作することを確認
ロレンツォガッティ

1
@feklee Emacs-26の場合は、zipを展開するだけです。少なくとも理論上はそうです。はい、READMEは更新が必要です。現時点ではありません。私はゴミです。
フィルロード
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.