我尝试安装Python软件包dulwich:
pip install dulwich
但我收到了一个晦涩的错误信息:
error: Unable to find vcvarsall.bat
如果我尝试手动安装该软件包,情况也是一样的:
> python setup.py install
running build_ext
building 'dulwich._objects' extension
error: Unable to find vcvarsall.bat
我尝试安装Python软件包dulwich:
pip install dulwich
但我收到了一个晦涩的错误信息:
error: Unable to find vcvarsall.bat
如果我尝试手动安装该软件包,情况也是一样的:
> python setup.py install
running build_ext
building 'dulwich._objects' extension
error: Unable to find vcvarsall.bat
在2016年解决这个问题最简单的方法是安装Chocolatey,然后安装vcpython27
软件包。打开Powershell:
> iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
> choco install python2 -y
> choco install vcpython27 -y
微软Visual C++编译器适用于Python 2.7(http://www.microsoft.com/en-us/download/details.aspx?id=44266),这不是一个解决方案吗?
pip install --global-option build_ext --global-option --compiler=mingw32 packagename
工作正常,强制使用mingw编译器而不是Microsoft的pip。有关详细信息,请参见此处https://github.com/pypa/pip/issues/18(最后一篇帖子)。
我尝试了很多解决方案,但只有一个对我有效,那就是安装 Microsoft Visual Studio 2008 Express C++。
这个问题出现在一个用C语言编写的Python 2.7模块(yEnc)中,(它还有其他与MS VS相关的问题)。请注意,Python 2.7是使用MS VS 2008版本构建的,而不是2010版本。
虽然它是免费的,但它很难找到,因为微软正在推广VS 2010。不过,MSDN官方的直接链接仍然有效:请查看https://dev59.com/VGUp5IYBdhLWcg3wXGy8#15319069获取下载链接。
https://wiki.python.org/moin/WindowsCompilers
它还指定了哪个VC++版本适用于哪个官方Win32 Python版本。请注意,MinGW不受官方支持(详见下文)。我曾经也遇到同样的问题,不过现在已经解决了。
"谷歌"告诉我需要安装 "Microsoft Visual C++ Compiler for Python 2.7"。 我不仅安装了这个工具,还安装了 Visual C++ 2008 Reditributable,但是没有用。然后我尝试安装Visual C++ 2008 Express Edition,问题就解决了!
建议尝试安装Visual C++ 2008 Express Edition!
@monkey的回答是正确的之一,但不完整。
如果你想使用MinGW,你应该在MinGW安装过程中选择C、C++和其他开发工具以获得“make.exe”。
你还必须将环境变量设置为make.exe所在路径。
为了补充他的回答,以下是步骤:
C:\Programs\MinGW\bin;C:\Programs\MinGW\msys\1.0\bin;
追加到PATH中编辑(如果不存在则创建)位于C:\Python26\Lib\distutils\distutils.cfg
的distutils.cfg
文件,使其为:
[build]
compiler=mingw32
确保环境变量已设置,方法是打开一个新的cmd.exe。
从https://www.visualstudio.com安装Visual Studio 2015社区版,然后
对于Python 3.4
set VS100COMNTOOLS=%VS140COMNTOOLS% && pip install XX