[New-bugs-announce] [issue10175] vs version for win32 compilation of extension modules is undocumented.

Tom Fogal report at bugs.python.org
Sat Oct 23 03:02:24 CEST 2010

New submission from Tom Fogal <tfogal at alumni.unh.edu>:

I have recently attempted to install a couple third party packages (zope.interface and dulwech, FWIW) and encountered great difficulties.  In particular, the setup complained that it could not find "vcvarsall.bat".  Even running these setup scripts from a VC++ 2010 Express command shell gave the error.

Through browsing this bug database, specifically bugs 5235, 7511, and 2513, I have determined that the 'official' python.org binary is built with either VS 2008 or VS 2008 Express, I'm not sure which yet, but it does not really matter.

Setting DISTUTILS_USE_SDK and MSSdk to 1 and manually running the script, as suggested in one of the bug reports, does get by the issue of finding "vcvarsall.bat".  As one might guess, this only results in a confusing error message during compilation (c1010070, "Failed to load and parse the manifest"), presumably because vs2008 binaries are not compatible with vs2010 output files.

This bug isn't so much about the incompatibility as to the difficulty in diagnosing the issue.  It seems that trying to figure out which VS was used to compile a particular version of python is stored within a puzzle of bug reports.  Could this be listed on the download page, e.g.:


?  Of course, it would be ideal if multiple binaries existed, so that someone in my position could say, "Oh, I don't even have 2008 installed; I should go with the 2010-compiled version", or vice-versa.  In the absence of that, simply knowing which version I'll need for extension modules is nice.

components: Extension Modules
messages: 119410
nosy: tfogal
priority: normal
severity: normal
status: open
title: vs version for win32 compilation of extension modules is undocumented.
type: compile error
versions: Python 2.6

Python tracker <report at bugs.python.org>

More information about the New-bugs-announce mailing list