我尝试安装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

当前回答

我不知道是否为时已晚,但我找到了Microsoft Visual C++Compiler for Python 2.7,该版本

如果需要此编译器包,您将收到的典型错误消息是Unable to find vcvarsall.bat

希望这有帮助!

其他回答

您可以从下载免费的Visual C++2008速成版http://go.microsoft.com/?linkid=7729279,它将在安装期间设置VS90COMNTOOLS环境变量,因此使用兼容的编译器进行构建。

正如@PiotrDobrogost在一篇评论中提到的,他对另一个问题的回答详细说明了为什么Visual C++2008是正确的构建工具,但随着Windows版本的Python迁移到Visual Studio的更新版本,这一点可能会发生变化:在Windows上为Python 2.7构建lxml

从安装Visual Studio 2015社区版https://www.visualstudio.com,然后

对于Python 3.4

设置VS100COMNTOOLS=%VS140COMNTOOLS%&&pip安装XX

对于Python 3.4,依赖于Visual Studio 2010。安装Visual C++2010 Express为我解决了这个问题。

欺骗它使用VS 2008或2013安装,而我碰巧没有使用。

我也遇到过同样的问题,所以我将在这里讲述我的故事,希望它能帮助其他人解决同样的问题并节省我刚刚花的几个小时:

我在一个windows7盒子里有mingw(g++(GCC)4.6.1)和python 2.7.3,我正在尝试安装PyCrypto。

在运行setup.py install时,这一切都以以下错误开始:

error: Unable to find vcvarsall.bat

通过将mingw指定为所选编译器,在谷歌搜索错误后轻松解决:

setup.py install build --compiler=mingw32

问题是,然后我得到了一个不同的错误:

configure: error: cannot run C compiled programs.

事实证明,我的防病毒软件阻止了新编译的.exe的执行。我刚刚禁用了防病毒“常驻屏蔽”,并转到下一个错误:

cc1.exe: error: unrecognized command line option '-mno-cygwin' 
error: command 'gcc' failed with exit status 1

这解决了这个问题:“要么安装稍微旧一点的MinGW版本,要么在Python目录中编辑distutils\cygwinccompiler.py以删除-mno-cygwin的所有实例。”(从这里开始)

现在,我终于可以开始工作了。

http://www.stickpeople.com/projects/python/win-psycopg/

从上面的链接安装适当的文件修复了我的问题。

提及:Jason Erickson[jerickso@stickpeople.com]. 他为Windows用户管理这个页面相当好。