Building Python 2.5.2 for Itanium

"Martin v. Löwis" martin at v.loewis.de
Fri Nov 21 15:50:06 EST 2008


>   I need to compile that module for that release and platform, but I
> have been unable to discover which MS compiler version and runtime was
> used to generate the binaries.  My understanding is that Python 2.5.2
> in general uses Visual Studio 2003, but MS does not appear to have
> shipped an Itanium compiler with that version of VS.

That's correct. See PCbuild/readme.txt for (somewhat) detailed
instructions; in essence, you need to use vsextcomp, if you want to
use the official build process.

>   I know that there is an Itanium compiler in VS2K5 Team System, and
> also a pre-release version was shipped with the Windows 2003 SP1
> Platform SDK.

I don't think that is a pre-release. The SDK had been shipping with
an Itanium compiler for quite some time, and it is the official compiler
to build binaries for Win64/IA-64 (to my knowledge, it is the compiler
that Windows itself was built with).

> However, the compiler in the SDK appears to basically
> be an earlier version of the VS2K5 compiler.

That might be. The more critical issue is what CRT to link with.
I had been building the Python Itanium binaries always with the SDK
compiler (of different SDKs, actually); the SDK then would always
link with msvcrt.dll. If you use VS2K5, you might end up linking
with a different CRT, which would be bad.

>   When I run setup.py build, the distutils die b/c it is apparently
> not the right compiler version.

Correct. distutils is not used for building on Windows.

Wrt. the original issue: I am quite skeptical that you can make ctypes
work on Win64/IA-64. There is are several reasons why it wasn't build,
such as it doesn't compile, and, if it would compile, it wouldn't work.
So prepare to do some porting of libffi. Alternatively, rewrite the code
that requires ctypes to use a plain extension module, which is probably
easier to port to Itanium.

Regards,
Martin



More information about the Python-list mailing list