web-dev-qa-db-ja.com

PyCrypto on python 3.5

Python 3.3および3.4​​のPyCryptoインストーラーを見つけましたが、Python 3.5。

pip installを使用してPyCryptonをインストールしようとすると、次のように表示されます。

warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath.  

Windows 10でPython 3.5にPyCryptoをインストールする方法はありますか?ありがとう!

24
Trsak

この警告はビルドを停止するものではありません。おそらく、バイナリ拡張機能(PyCryptoが持っている)をビルドするために必要なVisual Studio 2015コンパイラが不足している可能性があります。 Python Packaging User Guide を参照して、ご使用のバージョンのPythonに必要なコンパイラーを確認してください。

コンパイラが必要な理由は、PyCryptoが公式にソース配布のみを提供しているためです。したがって、PyCryptoをインストールするための2つのオプションがあります。

1.ソースからビルドします。

これは実際にはかなり簡単ですが、追加のソフトウェアをインストールする必要があります。繰り返しになりますが、上記のリンクされたPythonパッケージングユーザーガイドを参照して、Pythonのバージョンに適したコンパイラを見つけてください。Python Visual Studioのカスタムインストールを行う場合。

次に、インストールが完了し、おそらくコンピューターを再起動する必要があった後、pip install pycryptoを実行するだけで、pipはソースをダウンロードしてコンパイルします。

ホイール(pip install wheel)もインストールした場合、pipはソースからホイールを作成してキャッシュします。これが、オプション2で共有しているホイールを作成した方法です。

2.サードパーティからビルド済みディストリビューションをインストールする

私はたまたまサードパーティであり、PyCrypto 2.6.1 w/Python 3.5 私のGitHubリポジトリ上 。そのリポジトリのreadmeにインストール手順を含めました。

古いバージョンのPythonおよび/またはPyCryptoのビルドされたディストリビューションを探している場合、リポジトリのreadmeでVoidspaceにもリンクしています(申し訳ありませんが、2つのリンクに制限されていますここに)。

41
sfbahr

代わりにpycryptodomeを使用してください!それはまだ維持されているプロジェクトであり(2017年6月)、python 3.xxのpycryptoの機能が含まれています(python 3.6)

プロジェクトページ:

https://www.pycryptodome.org/en/latest/index.html

13
SvennnG

PyCryptodome 、PyCryptoのフォークを試すことができます。 Python 3.5。

Windowsシステム上でこの手順を実行するためのリファレンスとして、この投稿を使用してください: http://codeyarns.com/2012/04/28/python-version-not-found-in-registry-error/

それを使用して、これを行うことができます。

  1. Windowsの実行ダイアログを使用して、regeditプログラムを開きます。
  2. HKEY_LOCAL_MACHINE\SOFTWARE\Python(python_install_35.reg)からエクスポートします。この場所に移動し、コンテキストメニューで「エクスポート」を実行します。
  3. Regファイルを編集し、HKEY_LOCAL_MACHINEHKEY_CURRENT_USERに置き換えます
  4. コンソールを実行(cmd)管理者としてプロンプトを表示し、regedit python_install_35.regを実行
  5. レジストリにエントリを追加します
  6. Regeditで変更されたエントリを参照し、HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.3に変更します。
  7. インストーラーを再実行します
0
andhdo