在 Alpine 中用于 Python3 的 PyCrypto?
PyCrypto for Python3 in Alpine?
是否有 Alpine 包允许我为 Python 3 安装 PyCrypto?
在遇到 pip3 install pycrypto
的问题后,我偶然发现了这个 post,它解释了 使用 apk add py-numpy@testing
。也可以使用 apk add py-crypto
为 Python2.7 安装 PyCrypto。但是,我似乎无法弄清楚如何为 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 模块的方法吗?
PyCrypto 似乎在 python 3 方面有问题,我为此苦苦挣扎。如果您使用的是 Windows,这是对我有用的解决方案:
- 使用 Visual C++ 安装 Visual Studio 2015(VS 2015 版仅在您使用 python 3.5+ 时有效。如果您使用的是 3.4,我认为正确的版本是 VS2010。对于早期版本我不太确定选择哪个版本,但您可以在互联网上找到相关信息)
- 下载pycrypto source。目前稳定版本是 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 project(开发分支)的说明。
这对我有用:
apk add gcc g++ make libffi-dev openssl-dev
然后进行 pip 安装。
configure: error: C compiler cannot create executables
在 alpine 安装他们的 SDK。
对于 Alpine 中的任何编译内容,请确保您拥有这些包。
alpine-sdk autoconf automake libtool
安装它 apk 添加 --no-cache alpine-sdk autoconf automake libtool
是否有 Alpine 包允许我为 Python 3 安装 PyCrypto?
在遇到 pip3 install pycrypto
的问题后,我偶然发现了这个 post,它解释了 apk add py-numpy@testing
。也可以使用 apk add py-crypto
为 Python2.7 安装 PyCrypto。但是,我似乎无法弄清楚如何为 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 模块的方法吗?
PyCrypto 似乎在 python 3 方面有问题,我为此苦苦挣扎。如果您使用的是 Windows,这是对我有用的解决方案:
- 使用 Visual C++ 安装 Visual Studio 2015(VS 2015 版仅在您使用 python 3.5+ 时有效。如果您使用的是 3.4,我认为正确的版本是 VS2010。对于早期版本我不太确定选择哪个版本,但您可以在互联网上找到相关信息)
- 下载pycrypto source。目前稳定版本是 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 project(开发分支)的说明。
这对我有用:
apk add gcc g++ make libffi-dev openssl-dev
然后进行 pip 安装。
configure: error: C compiler cannot create executables
在 alpine 安装他们的 SDK。
对于 Alpine 中的任何编译内容,请确保您拥有这些包。
alpine-sdk autoconf automake libtool
安装它 apk 添加 --no-cache alpine-sdk autoconf automake libtool