Compiling for Python 2.7 with Windows 10 64-Bit

Hi everyone,

I tried to compile Phoenix myself to take a closer look at my problem here (https://groups.google.com/forum/#!topic/wxpython-users/F5l-QrKQEfk). I ran into a few problems and wanted to write them down, so other ppl will not have the same issues (or at least have a solution for them).

I am using Windows 10 64-Bit and Python 2.7 (32 Bit only as 64 Bit Compiler is not provided with express version of VS Express 2008). Windows 10 was a clean new install in November, so no old build tools available. MSDN is not available here, so I cannot get Visual Studio Pro 2008.

First of all, you reference the VC Compiler for Python 2.7 in your Readme. This will not work out of the box as the tool is not found by distutils unless you manually add a registry key. After solving this, I could get dox and etg to run, but the build command still failed as WAF did not find a valid architecture.

msvc: Impossible to find a valid architecture for building (in setup_msvc)
(complete log in D:\work\Python\wxPython\source\Phoenix\build\waf\2.7\x86\release\config.log)

There is an issue on github which describes that problem here: https://github.com/waf-project/waf/issues/1985. So it seems the compiler for Python 2.7 will not be supported - is this correct? Anyone found a solution for this?

However, as there seems to be no plan to fix this in WAF, I looked around and I managed to get an ISO file of the Visual C++ Express 2008. The direct download link at Microsoft can be found on stackoverflow.

After installing it, WAF is still unable to run, and reports the “Impossible to find a valid architecture for building”-Error.

I found a solution for this on the web, which asks for an additional argument added to WAF:

–msvc_version=“msvc 9.0Exp”

As the build.py offers the option extra_waf, i tried to add it with this and failed - I could not hand it over without the extra option being corrupted. Maybe this could be fixed somehow?

To verify that the solution itself works, I added it in my build script the hard way:

if isWindows:
    build_options.append('--msvc_version="msvc 9.0Exp"')
    if PYTHON_ARCH == '64bit':

I am now trying to look into my problem with the PropertyGrid.

Michael