【问题标题】:PyCrypto on python 3.5python 3.5 上的 PyCrypto
【发布时间】:2015-12-24 08:35:21
【问题描述】:

我找到了一些适用于 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?谢谢!

【问题讨论】:

标签: python pycrypto


【解决方案1】:

Python 3.x 版本的简单解决方案:

easy_install http://www.voidspace.org.uk/python/pycrypto-2.6.1/pycrypto-2.6.1.win-amd64-py3.4.exe

【讨论】:

    【解决方案2】:

    使用这篇文章作为在 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_MACHINE 替换为 HKEY_CURRENT_USER
    4. 以管理员身份执行控制台 (cmd) 提示并执行 regedit python_install_35.reg
    5. 将条目添加到注册表
    6. 使用 regedit 查看修改后的条目并将 HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.5 更改为 HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.3
    7. 重新运行安装程序

    【讨论】:

      【解决方案3】:

      使用 pycryptodome 代替!这是一个仍在维护的项目(2017 年 6 月),包括 python 3.xx 的 pycrypto 功能(它在 python 3.6 上对我有用)

      项目页面:

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

      【讨论】:

      • 我在 Linux 上使用 pycrypto,这非常适合在 windows 环境中测试服务器。具有与 pycrypto 完全相同的界面,它是一个替代品。
      • pip3 install pycryptodome 与 repo here.
      • 我试过了,但是我尝试运行的应用程序返回了 ATTRIBUTE ERROR: github.com/mach1el/pchat
      【解决方案4】:

      该警告不应停止构建,您更有可能缺少构建二进制扩展(PyCrypto 具有)所必需的 Visual Studio 2015 编译器。请参阅Python Packaging User Guide,了解您的 Python 版本所需的编译器。

      您需要编译器的原因是 PyCrypto 仅正式提供源代码分发。因此,您有两种安装 PyCrypto 的选择:

      1。从源代码构建:

      这实际上相当简单,但它需要您安装一些额外的软件。同样,请参阅上面链接的 Python 打包用户指南,以找到适合您的 Python 版本的编译器。我认为如果您自定义安装 Visual Studio,则可以选择仅安装 Python 的相关编译器。

      然后,安装完成后,你可能不得不重新启动计算机,你应该可以简单地运行pip install pycrypto,pip 会下载源代码并为你编译。

      如果您还安装了轮子 (pip install wheel),那么 pip 将从源代码创建轮子并将其缓存,这就是我在选项 2 中创建轮子的方式。

      2。安装来自第 3 方的内置发行版

      我碰巧是第 3 方,并且共享了我为 PyCrypto 2.6.1 w/Python 3.5 编译的用于 32 位和 64 位 Windows on my GitHub repo 的轮子。我在该 repo 的自述文件中包含了安装说明。

      如果您正在为旧版本的 Python 和/或 PyCrypto 寻找内置发行版,我还在我的 repo 的自述文件中链接到 Voidspace(抱歉,我在此限制为 2 个链接)。

      【讨论】:

      • 帮助很大!
      • 出色的工作@sfbahr,将我从痛苦的世界中拯救出来。
      • 现在我在找python3.6 64bit windows :|
      【解决方案5】:

      您可以尝试PyCryptodome,这是 PyCrypto 的一个分支。它具有适用于 Python 3.5 的 Windows 轮子。

      【讨论】:

        猜你喜欢
        • 2013-10-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-21
        • 1970-01-01
        • 2012-07-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多