[Python-Dev] First version of Python MSI available

Thomas Heller theller at python.net
Tue Dec 30 11:25:17 EST 2003

"Martin v. Loewis" <martin at v.loewis.de> writes:

> I have committed python/nondist/sandbox/msi to the CVS.
> This is a MSI generator for Python on Windows, which I'd
> like to propose as a replacement for Wise. A sample .msi
> file is available at
> http://www.dcl.hpi.uni-potsdam.de/home/loewis/python2.4.0.msi
> This installer includes binaries compiled with MSVC 7.1
> (aka VC.NET 2003).
> The MSI file tries to copy most features and user interface
> from the Wise installer, but adjusts to the feature set of MSI.
> I'm aware of a few issues, but I'd like to request feedback
> in any case.

I still have MSVC 7.0 (not 7.1) installed, and trying to build an
extension with distutils raises this error:

running build_ext
Traceback (most recent call last):
  File "setup.py", line 332, in ?
    options = options,
  File "c:\python24\lib\distutils\core.py", line 149, in setup
  File "c:\python24\lib\distutils\dist.py", line 907, in run_commands
  File "c:\python24\lib\distutils\dist.py", line 927, in run_command
  File "c:\python24\lib\distutils\command\build.py", line 107, in run
  File "c:\python24\lib\distutils\cmd.py", line 333, in run_command
  File "c:\python24\lib\distutils\dist.py", line 927, in run_command
  File "c:\python24\lib\distutils\command\build_ext.py", line 243, in run
  File "c:\python24\lib\distutils\ccompiler.py", line 1177, in new_compiler
    return klass (None, dry_run, force)
  File "c:\python24\lib\distutils\msvccompiler.py", line 206, in __init__
    self.__macros = MacroExpander(self.__version)
  File "c:\python24\lib\distutils\msvccompiler.py", line 112, in __init__
  File "c:\python24\lib\distutils\msvccompiler.py", line 128, in load_macros
    self.set_macro("FrameworkSDKDir", net, "sdkinstallrootv1.1")
  File "c:\python24\lib\distutils\msvccompiler.py", line 118, in set_macro
    self.macros["$(%s)" % macro] = d[key]
KeyError: 'sdkinstallrootv1.1'
> c:\python24\lib\distutils\msvccompiler.py(118)set_macro()
-> self.macros["$(%s)" % macro] = d[key]

Here is a dump of some variable:

(Pdb) print d
{'dbgmanageddebugger': 'C:\\Programme\\Gemeinsame Dateien\\Microsoft Shared\\VS7Debug\\vs7jit.exe PID %d APPDOM %d EXTEXT "%s" EVTHDL %d', 'dbgjitdebuglaunchsetting': 2, 'installroot': 'C:\\WINDOWS\\Microsoft.NET\\Framework\\', 'sdkinstallroot': 'C:\\Programme\\Microsoft Visual Studio .NET\\FrameworkSDK\\'}
(Pdb) print key
(Pdb) print macro


More information about the Python-Dev mailing list