有没有办法让pywin32使用vcvars32.bat而不是vcvarsall.bat?

时间:2010-12-09 21:06:35

标签: python pywin32

所以,我只是想在我的Windows 7机器上构建pywin32。运行安装脚本时,我遇到了“无法找到vcvarsall.bat”的常见错误。我确实安装了Visual C ++,所以我有些困惑。经过一些搜索,这里以及其他网站,我发现我的问题的最佳解决方案可能是将批处理文件的路径添加到我的路径。但是,在寻找该路径时,我意识到,由于我安装了Visual Studio 2010而不是2008或更早版本,因此我有一个名为“vcvars32.bat”的文件,而不是通常的“vavarsall.bat”。

是否可以让安装脚本使用vcvars32?这可能是荒谬的,可能揭示了我对批处理文件的了解甚少,但我是否可以将vcvars32.bat文件复制并重命名为vcvarsall.bat,或者它们是否根本不同才能正常工作?

或者我只是需要安装旧版本的Visual Studio?如果我能避免它,我真的不愿意。我在使用MinGW时遇到了麻烦。我需要先下载哪些文件吗?

提前致谢,

3 个答案:

答案 0 :(得分:3)

  

有没有办法让pywin32使用vcvars32.bat而不是   vcvarsall.bat?

没有必要。

  

我意识到,因为我安装了Visual Studio 2010而不是   2008年或更早,我有一个名为“vcvars32.bat”的文件而不是   通常的“vcvarsall.bat”。

vcvars32.bat正在使用vcvarsall.batC:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat。例如,在64位Windows上,Visual Studio 2010中这些文件的典型安装路径为

  • C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat
  • {{1}}
  

或者我只是需要安装较旧版本的Visual Studio?

如果您使用官方Python版本,那么您必须安装旧版本 - Visual Studio 2008或2005,具体取决于您使用的Python版本。那是因为Visual Studio的这些版本用于制作官方Python版本,并且在构建C扩展模块时必须使用相同版本的编译器。

答案 1 :(得分:1)

您可以写一个vcvarsall.bat,只需

"%~dp0\vcvars32.bat"

在同一文件夹中运行vcvars32.bat

(我想。我感觉好像几年没有触及Windows ......很开心☺)

答案 2 :(得分:1)

安装pywin32的二进制版本要简单得多,不需要安装任何c ++编译器。出于某种原因,在sourceforge网站上找到这些并不容易,但肯定存在。以下是版本2.14的所有可执行文件的链接:http://sourceforge.net/projects/pywin32/files/pywin32/Build%20214/