python gmpy 使用 MS Visual C++ Compiler Package for Python 2.7 安装错误
Posted
技术标签:
【中文标题】python gmpy 使用 MS Visual C++ Compiler Package for Python 2.7 安装错误【英文标题】:python gmpy install error using MS Visual C++ Compiler Package for Python 2.7 【发布时间】:2014-10-27 02:14:56 【问题描述】:我正在尝试在使用 virtualenv 创建的测试环境中通过 pip install gmpy
安装 gmpy,但它会返回错误
我的笔记本电脑是 Windows 8.1 x64,使用 Python 27 x32
我安装了适用于 Python 2.7 的 Microsoft Visual C++ 编译器包,因为我收到了 unable to find vcvarsall.bat
错误消息。一旦我安装了适用于 Python 2.7 的 C++ 编译器包并升级了setuptools to 7.0
,该消息就消失了,但我得到了以下信息:
c:\envs\testenv1\build\gmpy\src\gmpy.h(30) : fatal error C1083: Cannot open include file: 'gmp.h': No such file or directory
error: command 'C:\\Users\\user_name\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2
----------------------------------------
Cleaning up...
Removing temporary dir C:\envs\testenv1\build...
Command C:\envs\testenv1\Scripts\python.exe -c "import setuptools, tokenize;__file__='C:\\envs\\testenv1\\build\\gmpy\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\user_name\appdata\local\temp\pip-t4r7jf-record\install-record.txt --single-version-externally-managed --compile --install-headers C:\envs\testenv1\include\site\python2.7 failed with error code 1 in C:\envs\testenv1\build\gmpy
Exception information:
Traceback (most recent call last):
File "C:\envs\testenv1\lib\site-packages\pip\basecommand.py", line 122, in main
status = self.run(options, args)
File "C:\envs\testenv1\lib\site-packages\pip\commands\install.py", line 283, in run
requirement_set.install(install_options, global_options, root=options.root_path)
File "C:\envs\testenv1\lib\site-packages\pip\req.py", line 1435, in install
requirement.install(install_options, global_options, *args, **kwargs)
File "C:\envs\testenv1\lib\site-packages\pip\req.py", line 706, in install
cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False)
File "C:\envs\testenv1\lib\site-packages\pip\util.py", line 697, in call_subprocess
% (command_desc, proc.returncode, cwd))
InstallationError: Command C:\envs\testenv1\Scripts\python.exe -c "import setuptools, tokenize;__file__='C:\\envs\\testenv1\\build\\gmpy\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\user_name\appdata\local\temp\pip-t4r7jf-record\install-record.txt --single-version-externally-managed --compile --install-headers C:\envs\testenv1\include\site\python2.7 failed with error code 1 in C:\envs\testenv1\build\gmpy
有人能指出正确的方向吗?
我安装了以下内容:
Microsoft Visual 2008 Redistributable - x64 9.0.30729.6161
Microsoft Visual 2008 Redistributable - x86 9.0.30729.6161
Microsoft Visual 2010 x64 Redistributable - 10.0.40219
Microsoft Visual 2010 x86 Redistributable - 10.0.40219
Microsoft Visual 2012 Redistributable (x64) - 11.0.61030
Microsoft Visual 2012 Redistributable (x86) - 11.0.61030
Microsoft Visual C++ Compiler Package for Python 2.7
我不想安装 VS2008 或 MINGW。我希望“Microsoft Visual C++ Compiler Package for Python 2.7”能解决这个问题,但它没有。
【问题讨论】:
【参考方案1】:我维护gmpy
,我只想说在Windows 上构建gmpy
和gmpy2
非常具有挑战性。您是否有理由不能使用预构建的二进制文件? gmpy
/ gmpy2
依赖于单个 DLL,因此如果需要,很容易复制到不同的位置。
【讨论】:
我本来想安装pycrypto。但是我收到了warning: GMP or MPIR library not found; Not building Crypto.PublickKey._fastmath
错误以及 C++ 编译器错误。我想安装 pysftp,它需要 paramiko,它需要 pycrypto,它需要 gmp 库。我觉得我正在以错误的方式解决这个问题。我只想使用 ssl 建立 ftp 连接。我是 python 新手。
PyCrypto
实际上并不需要gmpy
。它需要 GMP 或 MPIR C
库。 gmpy
也需要相同的库。编译 GMP 或 MPIR 是一个挑战。我会寻找 PyCrypto 的预构建 Windows 二进制文件。
你知道我是否需要pycrypto
来换取paramiko
?根据文档,我知道 pysftp 的要求包括 paramiko ..【参考方案2】:
我建议您在系统上安装 anaconda 发行版。使用 conda 安装 gmpy2 非常简单。它会为您处理所有依赖项。您需要做的就是输入命令:conda install gmpy2 在您的环境中,您将在几秒钟内安装它。
【讨论】:
以上是关于python gmpy 使用 MS Visual C++ Compiler Package for Python 2.7 安装错误的主要内容,如果未能解决你的问题,请参考以下文章