Python and binary compatibility

A

Ambush Commander

I'm a newbie to Python; various packages I've used in the past (Lyx,
LilyPond and Inkscape, to name a few) have bundled Python with them
for various scripting needs, and Cygwin also had an install lying
around, so when I started to use Mercurial (also Python) I decided
that I'd consolidate all of these installations into a single Windows
installation for general use, as well as for me to properly learn the
language.

Whoo, it's been a journey.

The primary problem involves binary extensions to the Python
interpreter itself, which Mercurial uses. The only C compiler I have
on my machine is Visual Studio 2005 Express, but Python's binary
distribution was compiled with VS 2003, so the installer refuses to
compile the package. I understand that Python 3 uses VS 2008, but
that's no good for me as it will probably break all of the scripts.

So, I'm trying to figure out what I should do. Mercurial's binary
distribution was built using MingW, and I do have Cygwin lying around
but I'd like to go for the "native" solution for the most speed. If I
use MingW, I might as well use their pre-packaged binary. I could
recompile Python with MSVC 2005, but I expect that will be its own can
of worms. ActiveState is closed source and appears to have the wrong
MSVC dependencies. All my troubles could apparently be fixed if I
could acquire a copy of VS 2003, but Microsoft has made it incredibly
difficult to find the download for it (I don't think it exists).

Any suggestions?
 
M

Martin v. Löwis

All my troubles could apparently be fixed if I
could acquire a copy of VS 2003, but Microsoft has made it incredibly
difficult to find the download for it (I don't think it exists).

Any suggestions?

You can get copies of VS 2003 from ebay fairly easily.

Regards,
Martin
 
T

Thomas Heller

Ambush said:
I'm a newbie to Python; various packages I've used in the past (Lyx,
LilyPond and Inkscape, to name a few) have bundled Python with them
for various scripting needs, and Cygwin also had an install lying
around, so when I started to use Mercurial (also Python) I decided
that I'd consolidate all of these installations into a single Windows
installation for general use, as well as for me to properly learn the
language.

Whoo, it's been a journey.

The primary problem involves binary extensions to the Python
interpreter itself, which Mercurial uses. The only C compiler I have
on my machine is Visual Studio 2005 Express, but Python's binary
distribution was compiled with VS 2003, so the installer refuses to
compile the package. I understand that Python 3 uses VS 2008, but
that's no good for me as it will probably break all of the scripts.

So, I'm trying to figure out what I should do. Mercurial's binary
distribution was built using MingW, and I do have Cygwin lying around
but I'd like to go for the "native" solution for the most speed. If I
use MingW, I might as well use their pre-packaged binary. I could
recompile Python with MSVC 2005, but I expect that will be its own can
of worms. ActiveState is closed source and appears to have the wrong
MSVC dependencies. All my troubles could apparently be fixed if I
could acquire a copy of VS 2003, but Microsoft has made it incredibly
difficult to find the download for it (I don't think it exists).

Any suggestions?

Maybe this helps?

http://www.develer.com/oss/GccWinBinaries

Thomas
 
C

Christian Heimes

Ambush said:
The primary problem involves binary extensions to the Python
interpreter itself, which Mercurial uses. The only C compiler I have
on my machine is Visual Studio 2005 Express, but Python's binary
distribution was compiled with VS 2003, so the installer refuses to
compile the package. I understand that Python 3 uses VS 2008, but
that's no good for me as it will probably break all of the scripts.

Python 2.6 and 3.0 will use VS 2008. It's not recommended to compile
Python extension with a different compiler but you can compile the
extension with 2003. It will work as long as the extensions don't
exchange file handlers or other handlers. Google for "Mixing CRTs" will
reveal more details.
So, I'm trying to figure out what I should do. Mercurial's binary
distribution was built using MingW, and I do have Cygwin lying around
but I'd like to go for the "native" solution for the most speed. If I
use MingW, I might as well use their pre-packaged binary. I could
recompile Python with MSVC 2005, but I expect that will be its own can
of worms. ActiveState is closed source and appears to have the wrong
MSVC dependencies. All my troubles could apparently be fixed if I
could acquire a copy of VS 2003, but Microsoft has made it incredibly
difficult to find the download for it (I don't think it exists).

You can use MinGW32 to compile the extension, too. Or use the free
toolchain as described at
http://wiki.python.org/moin/Building_Python_with_the_free_MS_C_Toolkit

Christian
 
C

Christian Heimes

Joshua said:
> That page has a link to the Microsoft Visual C++ Toolkit 2003 page, which
then says it's been discontinued and to use Visual C++ 2005 Express
Edition. Sigh...

You can still find some copies of the free toolkit on the internet.

Christian
 

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,994
Messages
2,570,223
Members
46,810
Latest member
Kassie0918

Latest Threads

Top