Compiling Python (modules) on 64bit Windows - which compiler suite?

Discussion in 'Python' started by Ralph Heinkel, Mar 21, 2012.

  1. Hi,

    when processing our mass spectrometry data we are running against the
    2GB memory limit on our 32 bit machines. So we are planning to move to
    64bit. Downloading and installing the 64bit version of Python for
    Windows is trivial, but how do we compile our own C extension? Visual C
    ++ 2008 express comes for free, but only compiles for 32 bit.

    What has been used to compile the downloadable Python Win64 bit
    version? Visual Studio professional?
    The problem with the professional edition is that it is hard to obtain
    and it is sort of out-of-date - nowadays everyone uses Visual Studio
    2010 (or even 2011 coming soon). So if Visual Studio 2008 professional
    is required for compiling 64bit modules, we would have to spend $1200
    for a license which is actually rather out of date.

    Any hints or suggestions are very welcome.

    Thanks,

    Ralph
    Ralph Heinkel, Mar 21, 2012
    #1
    1. Advertising

  2. Ralph Heinkel

    Terry Reedy Guest

    Re: Compiling Python (modules) on 64bit Windows - which compilersuite?

    On 3/21/2012 11:06 AM, Ralph Heinkel wrote:
    > when processing our mass spectrometry data we are running against the
    > 2GB memory limit on our 32 bit machines. So we are planning to move to
    > 64bit. Downloading and installing the 64bit version of Python for
    > Windows is trivial, but how do we compile our own C extension? Visual C
    > ++ 2008 express comes for free, but only compiles for 32 bit.
    >
    > What has been used to compile the downloadable Python Win64 bit
    > version? Visual Studio professional?


    Yes. Python Windows devs get it for free from MS.

    > The problem with the professional edition is that it is hard to obtain
    > and it is sort of out-of-date - nowadays everyone uses Visual Studio
    > 2010 (or even 2011 coming soon). So if Visual Studio 2008 professional
    > is required for compiling 64bit modules, we would have to spend $1200
    > for a license which is actually rather out of date.
    >
    > Any hints or suggestions are very welcome.


    I believe the intention is to release 3.3 compiled with VS 2010. Brian
    Curtin and Martin Loewis are working on that. I believe people have
    successfully built at least the basics with VS2010.

    You could also dual boot to Linux and get 64 bit gcc for free.

    --
    Terry Jan Reedy
    Terry Reedy, Mar 21, 2012
    #2
    1. Advertising

  3. Re: Compiling Python (modules) on 64bit Windows - which compilersuite?

    On Wed, 21 Mar 2012 08:06:47 -0700 (PDT), Ralph Heinkel
    <> declaimed the following in
    gmane.comp.python.general:

    > Hi,
    >
    > when processing our mass spectrometry data we are running against the
    > 2GB memory limit on our 32 bit machines. So we are planning to move to
    > 64bit. Downloading and installing the 64bit version of Python for
    > Windows is trivial, but how do we compile our own C extension? Visual C
    > ++ 2008 express comes for free, but only compiles for 32 bit.
    >

    I believe the 64-bit compilers are available in the .NET SDK... You
    then need to configure Express to find them.

    http://msdn.microsoft.com/en-us/library/9yb4317s(v=vs.90).aspx
    --
    Wulfraed Dennis Lee Bieber AF6VN
    HTTP://wlfraed.home.netcom.com/
    Dennis Lee Bieber, Mar 21, 2012
    #3
  4. Ralph Heinkel

    Thomas Bach Guest

    Re: Compiling Python (modules) on 64bit Windows - which compilersuite?

    Hi,

    Ralph Heinkel <> writes:

    > Hi,
    >
    > when processing our mass spectrometry data we are running against the
    > 2GB memory limit on our 32 bit machines. So we are planning to move to
    > 64bit. Downloading and installing the 64bit version of Python for
    > Windows is trivial, but how do we compile our own C extension?


    What about installing Cygwin and using the shipped GCC?

    Regards,
    Thomas Bach.
    Thomas Bach, Mar 21, 2012
    #4
  5. Ralph Heinkel

    Guest

    On Wednesday, March 21, 2012 8:06:47 AM UTC-7, Ralph Heinkel wrote:
    > Hi,
    >
    > when processing our mass spectrometry data we are running against the
    > 2GB memory limit on our 32 bit machines. So we are planning to move to
    > 64bit. Downloading and installing the 64bit version of Python for
    > Windows is trivial, but how do we compile our own C extension? Visual C
    > ++ 2008 express comes for free, but only compiles for 32 bit.
    >
    > What has been used to compile the downloadable Python Win64 bit
    > version? Visual Studio professional?
    > The problem with the professional edition is that it is hard to obtain
    > and it is sort of out-of-date - nowadays everyone uses Visual Studio
    > 2010 (or even 2011 coming soon). So if Visual Studio 2008 professional
    > is required for compiling 64bit modules, we would have to spend $1200
    > for a license which is actually rather out of date.
    >
    > Any hints or suggestions are very welcome.
    >
    > Thanks,
    >
    > Ralph


    See "Compiling 64-bit extension modules on Windows" at <http://wiki.cython.org/64BitCythonExtensionsOnWindows>. It applies to non-Cython extensions as well.

    MinGW-w64 also works, but you'll have to generate and use libpythonXX.a and libmsvcr90.a link libraries.

    Christoph
    , Mar 22, 2012
    #5
  6. Re: Compiling Python (modules) on 64bit Windows - which compilersuite?

    Thomas Bach, 21.03.2012 20:03:
    > Ralph Heinkel writes:
    >> when processing our mass spectrometry data we are running against the
    >> 2GB memory limit on our 32 bit machines. So we are planning to move to
    >> 64bit. Downloading and installing the 64bit version of Python for
    >> Windows is trivial, but how do we compile our own C extension?

    >
    > What about installing Cygwin and using the shipped GCC?


    I'm pretty sure it doesn't cross compile to native Windows. It certainly
    won't build against a native Windows Python installation, and given the
    overhead that cygwin induces into a lot of common OS operations (such as
    fork(), I/O operations or file system access), a native Windows Python
    installation has serious advantages in most cases.

    If the choice is GCC, then MinGW is the right tool.

    Stefan
    Stefan Behnel, Mar 22, 2012
    #6
  7. >
    > See "Compiling 64-bit extension modules on Windows" at <http://wiki.cython.org/64BitCythonExtensionsOnWindows>. It applies to non-Cython extensions as well.
    >
    > MinGW-w64 also works, but you'll have to generate and use libpythonXX.a and libmsvcr90.a link libraries.
    >
    > Christoph


    Thanks to everyone who has replied to my question.
    Especially for the link/hint to use the .NET SDK which indeed seems to provide the right tools for 64bit compilation.
    I'm going to try this and report back here.

    Cheers,

    Ralph
    Ralph Heinkel, Mar 22, 2012
    #7
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. John Abel

    Help Compiling 64bit Python

    John Abel, Sep 20, 2003, in forum: Python
    Replies:
    4
    Views:
    367
    John Abel
    Sep 20, 2003
  2. llothar
    Replies:
    19
    Views:
    585
    Neil Booth
    Apr 21, 2007
  3. r2d3
    Replies:
    1
    Views:
    1,379
  4. Virchanza
    Replies:
    8
    Views:
    1,100
    Nobody
    Apr 6, 2011
  5. Chicken McNuggets

    C11 Compiler Test Suite

    Chicken McNuggets, Sep 14, 2012, in forum: C Programming
    Replies:
    26
    Views:
    1,375
    Stephen Sprunk
    Nov 12, 2012
Loading...

Share This Page