[Distutils] Building Python extensions on 64-bit Windows using the SDK compilers

David Cournapeau cournape at gmail.com
Thu Sep 25 17:15:25 CEST 2014


On Wed, Sep 24, 2014 at 7:49 PM, Paul Moore <p.f.moore at gmail.com> wrote:

> On 24 September 2014 17:24, Chris Barker <chris.barker at noaa.gov> wrote:
> > Thanks -- that would be great. But really, why is this so hard? Win64 is
> > essentially One platform, and the freely available SDK is ONE compiler
> > environment.
>
> If only that were true :-)
>
> What I've found is:
>
> 1. Different SDKs are needed for Python 2.7 and 3.3+ (the VS2008/VS2010
> split)
> 2. The v7.0 SDK (Python 2.7) is a bit of a beast to install correctly
> - I managed to trash a VM by installing the x86 one when I should have
> installed the x64 one.
> 3. There are bugs in the SDK - the setenv script for v7.0 needs fixes
> or it fails.
>
> Agreed, it should be easy. And indeed, it is if you have the full
> Visual Studio. But when Python 2.7 came out, the freely available MS
> tools were distinctly less convenient to use, and that shows.
>

The SDK scripts are indeed a bit broken, but it is possible to detect them
automatically in a way that is similar to what was done for MSVC 2008.

I know that for a fact because I ported the python distutils MSVC detection
to scons, and added support for the SDK there:
https://bitbucket.org/scons/scons/annotate/b43c04896075c3392818e07ce472e73cd6a9aca5/src/engine/SCons/Tool/MSCommon/sdk.py?at=default
(the code has changed since then).

Is that the kind of thing that falls onto long term support for 2.7 ? If
so, I would be willing to work it out to put in distutils.

David


> It's getting a lot better, and once we start using MSVC 2012 or later
> (i.e., Python 3.5+), the express editions include 64-bit support out
> of the box, which makes most of the problems go away.
>
> Paul
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20140925/efc20cdf/attachment.html>


More information about the Distutils-SIG mailing list