有没有一个适用于Alpine的软件包,允许我为Python 3安装PyCrypto?
遇到pip3 install pycrypto
问题后,我偶然发现了这篇文章,它解释了如何使用 apk add py-numpy@testing
在 Alpine 中安装 numpy。PyCrypto也可以使用apk add py-crypto
为Python2.7安装。但是,我似乎无法弄清楚如何为 Python3 调用 pycrypto,或者即使这个包存在。
作为替代解决方案,我尝试使用 apk add gcc
安装 C 编译器 gcc,以便 pip3 install pycrypto
中的安装工具可以编译。但是,当我已经使用 gcc 运行该命令时,它会抛出一个致命错误:
...
running build_ext
running build_configure
checking for gcc... gcc
checking whether the C compiler works... no
configure: error: in `/tmp/pip-build-2TivSm/pycrypto':
configure: error: C compiler cannot create executables
...
有没有办法在Alpine中编译Python3模块?
这对我有用:
apk add gcc g++ make libffi-dev openssl-dev
然后进行pip安装。
配置:错误:C 编译器无法创建可执行文件
在高山安装他们的SDK。
对于 Alpine 中的任何编译内容,请确保您拥有这些包。
Alpine-SDK Autoconf Automake libtool
安装它 apk 添加 --无缓存 高山-sdk 自动会议自动制作库工具
PyCrypto似乎在python 3上存在问题,我对此有很多挣扎。如果您使用的是Windows,则这是对我有用的解决方案:
- 使用 Visual
- C++安装 Visual Studio 2015(VS 版本 2015 仅在使用 python 3.5+ 时才有效。如果您使用的是3.4,我认为正确的版本是VS2010。对于早期版本,我不确定选择哪个版本,但您可以在互联网上找到相关信息(
- 下载 pycrypto 源代码。目前稳定版本是pycrypto-2.6.1。使用这个,而不是下面的实验版本。
- 提取存档
- 编辑文件
lib/Crypto/Random/OSRNG/nt.py
并将import winrandom
替换为from Crypto.Random.OSRNG import winrandom
。 - 从 cmd
python setup.py build -c msvc python setup.py install python setup.py test
运行以下命令 - 如果测试给你一些错误,你无论如何都可能会侥幸逃脱。
说明取自我的 github 项目(开发分支(。