Ned Deily wrote:
No, MySQLdb does have a C extension component. There should be a _mysql.so there somewhere. If you build it with easy_install, the unzipped egg layout is:

and if you build it with plain old "setup.py build", you get a build dir with:

ls build/lib.macosx-10.3-ppc-2.5/
MySQLdb              _mysql.so            _mysql_exceptions.py


I've just done it straight, with a PPC build of MySQL -- I got:

gcc -arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -g -bundle -undefined dynamic_lookup build/temp.macosx-10.3-ppc-2.5/_mysql.o -L/usr/local/mysql/lib -lmysqlclient_r -lz -lm -lmygcc -o build/lib.macosx-10.3-ppc-2.5/_mysql.so
/usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: for architecture i386
/usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: warning build/temp.macosx-10.3-ppc-2.5/_mysql.o cputype (18, architecture ppc) does not match cputype (7) for specified -arch flag: i386 (file not loaded)


which I think makes sense, as _mysql.o was built with the flags from mysql-config, which only gives PPC as it's now set on my machine.

However:

$ file build/lib.macosx-10.3-ppc-2.5/_mysql.so
build/lib.macosx-10.3-ppc-2.5/_mysql.so: Mach-O universal binary with 2 architectures build/lib.macosx-10.3-ppc-2.5/_mysql.so (for architecture i386): Mach-O bundle i386 build/lib.macosx-10.3-ppc-2.5/_mysql.so (for architecture ppc): Mach-O bundle ppc


so I did get a universal _mysql.so, but I doubt it would work on a Intel machine.

and, with a fat python config:

$ file _mysql.so
_mysql.so: Mach-O universal binary with 2 architectures
_mysql.so (for architecture i386):  Mach-O bundle i386
_mysql.so (for architecture ppc):   Mach-O bundle ppc

Ned, how did you built that?

$ file libmysqlclient_r.16.0.0.dylib
libmysqlclient_r.16.0.0.dylib: Mach-O universal binary with 3 architectures libmysqlclient_r.16.0.0.dylib (for architecture i386): Mach-O dynamically linked shared library i386 libmysqlclient_r.16.0.0.dylib (for architecture ppc64): Mach-O 64-bit dynamically linked shared library ppc64 libmysqlclient_r.16.0.0.dylib (for architecture ppc): Mach-O dynamically linked shared library ppc

and where did you get this? is that from the tarball on the MySQL site?

-Chris



--
Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/OR&R            (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

chris.bar...@noaa.gov
_______________________________________________
Pythonmac-SIG maillist  -  Pythonmac-SIG@python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig

Reply via email to