In article <49653a6a.3070...@strout.net>, Joe Strout <j...@strout.net> wrote:
> Christopher Barker wrote: > > > the extensions that distutils builds will be called something like > > _mysql. It will be in site_packages, and in your app bundle, along with > > .py and .pyc files, NOT in with FrameWorks. > > Ah, I didn't know that. Poking around in Resources/lib (and including > unzipping site-packages.zip), I find things like mySQL.pyc, and a > MySQLdb folder containing a bunch of other .pyc files. Nothing else > though; just Python bytecode. Is it possible that MySQLdb is written > entirely in Python, and was never the problem at all? I.e., that given > a suitable portable mysql client library, MySQLdb will Just Work? 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: $ ls -l total 224 drwxrwx--- 2 nad admin 272 Feb 23 2008 EGG-INFO drwxrwx--- 3 nad admin 714 Feb 23 2008 MySQLdb -rwxrwxr-x 1 nad admin 257 Feb 23 2008 _mysql.py -rw-rw---- 1 nad admin 697 Feb 23 2008 _mysql.pyc -rw-rw---- 1 nad admin 697 Feb 23 2008 _mysql.pyo -rwxrwxr-x 1 nad admin 77964 Feb 23 2008 _mysql.so -rwxrwxr-x 1 nad admin 2306 Feb 23 2008 _mysql_exceptions.py -rw-rw---- 1 nad admin 5279 Feb 23 2008 _mysql_exceptions.pyc -rw-rw---- 1 nad admin 5279 Feb 23 2008 _mysql_exceptions.pyo 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 > But OK, now this brings up the question of why my > libmysqlclient_r.16.dylib is Intel-only, when I took pains to install a > UB version of MySQL (c.f. the "Installing MySQL" section of > <http://www.dotancohen.com/howto/python-app-mac.html>). (I'm going to > do a fresh download of that mysql binary package and poke around inside > to see what I find.) Hmm, there's omething odd about that download. -rw-r--r--@ 1 nad staff 4396 Nov 20 23:31 libdbug.a -rw-r--r--@ 1 nad staff 2619952 Nov 20 23:31 libheap.a -rw-r--r--@ 1 nad staff 7612800 Nov 20 23:31 libmyisam.a -rw-r--r--@ 1 nad staff 3293744 Nov 20 23:31 libmyisammrg.a -rwxr-xr-x@ 1 nad staff 15266468 Nov 20 23:32 libmysqlclient.16.0.0.dylib -rwxr-xr-x@ 1 nad staff 4781040 Nov 15 14:57 libmysqlclient.16.dylib -rw-r--r--@ 1 nad staff 17541992 Nov 20 23:31 libmysqlclient.a -rwxr-xr-x@ 1 nad staff 4781040 Nov 15 14:57 libmysqlclient.dylib -rwxr-xr-x@ 1 nad staff 867 Nov 15 14:57 libmysqlclient.la -rwxr-xr-x@ 1 nad staff 15337152 Nov 20 23:32 libmysqlclient_r.16.0.0.dylib -rwxr-xr-x@ 1 nad staff 4801460 Nov 15 14:57 libmysqlclient_r.16.dylib -rw-r--r--@ 1 nad staff 17629744 Nov 20 23:31 libmysqlclient_r.a -rwxr-xr-x@ 1 nad staff 4801460 Nov 15 14:57 libmysqlclient_r.dylib -rwxr-xr-x@ 1 nad staff 881 Nov 15 14:57 libmysqlclient_r.la -rw-r--r--@ 1 nad staff 203291168 Nov 20 23:31 libmysqld.a -rw-r--r--@ 1 nad staff 5235560 Nov 20 23:31 libmystrings.a -rw-r--r--@ 1 nad staff 2435784 Nov 20 23:31 libmysys.a -rw-r--r--@ 1 nad staff 125656 Nov 20 23:30 libvio.a -rw-r--r--@ 1 nad staff 563080 Nov 20 23:30 libz.a -rwxr-xr-x@ 1 nad staff 741 Nov 15 14:57 libz.la drwxr-xr-x@ 2 nad staff 408 Nov 20 23:32 plugin $ 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 $ file libmysqlclient_r.16.dylib libmysqlclient_r.16.dylib: Mach-O dynamically linked shared library i386 Perhaps you can get away with making a symlink or copying from one to the other?? -- Ned Deily, n...@acm.org _______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig