[Pythonmac-SIG] How to build Python 2.5 to support 64-bits on Mac OS X 10.4
Dr. Harold Walter Schranz
Harold.Schranz at anu.edu.au
Thu Feb 1 09:06:57 CET 2007
Hi Distinguished Pythoneers,
Sorry if this Email is too verbose or unstructured ... (blame: blood
sugar is dropping and I'm in need of some dinner!)
I've been set the task of creating a 64 bit Intel build of Python 2.5
that supports the EM64T functionality in our research groups new
machines which are both running OS X 10.4.8.
Intel Core 2 Duo laptop:
Machine Name: Mac Machine Model: MacBookPro2,2
Processor Name: Intel Core 2 Duo Processor Speed: 2.33 GHz
Number Of Processors: 1 Total Number Of Cores: 2
L2 Cache (per processor): 4 MB Memory: 2 GB Bus Speed: 667 MHz
Xserve Quad Xeon:
Machine Name: Xserve Machine Model: Xserve1,1
Processor Name: Dual-Core Intel Xeon Processor Speed: 3 GHz
Number Of Processors: 2 Total Number Of Cores: 4
L2 Cache (per processor): 4 MB Memory: 16 GB Bus Speed: 1.33 GHz
The usual Python 2.5 build (http://www.python.org/ftp/python/2.5/
python-2.5-macosx.dmg) I believe is just 32 bit Universal ... we
don't need a Universal build but 32 bits just doesn't cut it (the
proverbial mustard) so to speak.
I believe just a command line Python would be fine that supports 64
bit (as we need to interface to a MySQL database with multi-gigabytes
of data).
So far we've tried a source base build (http://www.python.org/ftp/
python/2.5/Python-2.5.tgz)
1) with the default configure (default options) which just leads to a
32 bit Intel python executable:
$ file python.exe
python.exe: Mach-O executable i386
2) and then a few different flags on configure (I've no idea where
my "partner in crime" got these from! I though -march was the new
flag!):
/configure OPT="-fast -Wall \
> -Wstrict-prototypes -fno-common -fPIC \
> -isysroot /Developer/SDKs/MacOSX10.4u.sdk \
> -arch x86_64" \
> LDFLAGS="-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk,\
> -headerpad_max_install_names -arch x86_64"
While the configure runs ... the make eventually fails with:
/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/
CoreServices.framework/Frameworks/CarbonCore.framework/Headers/fp.h:
1338: error: 'SIGDIGLEN' undeclared here (not in a function)
make: *** [Python/mactoolboxglue.o] Error 1
I've seen this SIGDIGLEN error about before ... probably relates to
the conditional in fp.h not handling an unknown CPU_TARGET :
#if TARGET_CPU_PPC || TARGET_CPU_X86
#define SIGDIGLEN 36
#elif TARGET_CPU_68K
#define SIGDIGLEN 20
#endif
Anyway, I expect the fundamental problem relates to Carbon not being
64-bit ready (until Leopard).
I guess I just want to do a basic ("Unix-"-y) command line build of
Python 2.5 that handles the EM64T functionality in the chips we have
in our machines.
Do I have to wait until Leopard???
Thanks for any pointers (or any other structures 8-) ).
Harry.
Extinguished Pythoneer (temporarily)
------------------------------------------------------------------------
----
Dr. Harold W. Schranz, Research Fellow, Computational Genomics Group
Division of Molecular Bioscience
John Curtin School of Medical Research
Australian National University
Canberra ACT 0200, Australia Email:
Harold.Schranz at anu.edu.au
------------------------------------------------------------------------
----
More information about the Pythonmac-SIG
mailing list