Thank you so much, Graham. You may have pointed me to the right direction.

So, the following is what I get, where I basically filed all libmysqlclient*
files under /usr/local/mysql/lib/. It seems the mysql I installed is for
i386 architecture, but all the libmysqlclient files seem for x86_64, which
is really confusing. Anyway, do you have any ideas of what's happening here?

>$ mysql --version
mysql  Ver 14.14 Distrib 5.5.14, for osx10.6 (i386) using readline 5.1

>$ ls /usr/local/mysql/lib/libmysqlclient*
/usr/local/mysql/lib/libmysqlclient.18.dylib
/usr/local/mysql/lib/libmysqlclient_r.18.dylib
/usr/local/mysql/lib/libmysqlclient.a
 /usr/local/mysql/lib/libmysqlclient_r.a
/usr/local/mysql/lib/libmysqlclient.dylib
 /usr/local/mysql/lib/libmysqlclient_r.dylib

>$ file /usr/local/mysql/lib/libmysqlclient.18.dylib
/usr/local/mysql/lib/libmysqlclient.18.dylib: Mach-O 64-bit dynamically
linked shared library x86_64

>$ file /usr/local/mysql/lib/libmysqlclient.dylib
/usr/local/mysql/lib/libmysqlclient.dylib: Mach-O 64-bit dynamically linked
shared library x86_64

>$ file /usr/local/mysql/lib/libmysqlclient.a
/usr/local/mysql/lib/libmysqlclient.a: current ar archive random library

>$ file /usr/local/mysql/lib/libmysqlclient_r.18.dylib
/usr/local/mysql/lib/libmysqlclient_r.18.dylib: Mach-O 64-bit dynamically
linked shared library x86_64

>$ file /usr/local/mysql/lib/libmysqlclient_r.dylib
/usr/local/mysql/lib/libmysqlclient_r.dylib: Mach-O 64-bit dynamically
linked shared library x86_64

>$ file /usr/local/mysql/lib/libmysqlclient_r.a
/usr/local/mysql/lib/libmysqlclient_r.a: current ar archive random library



On Tue, Aug 23, 2011 at 5:09 PM, Graham Dumpleton <
[email protected]> wrote:

> On 24 August 2011 08:58, Jim <[email protected]> wrote:
> > Hello folks,
> > This probably has been discussed many times, but I still can't find any
> > solution yet. Basically, it turns out that python can load MySQLdb just
> > fine, but Apache can't load MySQLdb from the wsgi script.
> > Here is the configuration of my machine.
> > Mac OS X Snow Leopard 10.6.8
> > Apache2 (shipped with Snow Leopard)
>
> Which is fat and by default will run as 64 bit.
>
> > Python 2.7 (from python.org)
>
> Which I believe now comes as fat binary so should be okay.
>
> > virtualenv
> > MySQL-python 1.2.3
>
> This is where problems start.
>
> Because Apache is going to run as 64 bit, and because MySQL client
> libraries are not fat but for a specific architecture, you need to
> ensure you installed 64 bit MySQL and not 32 but version.
>
> For example, on my system I have:
>
>  mysql-5.1.53-osx10.6-x86_64
>
> and get:
>
>  $ file /usr/local/mysql/lib/libmysqlclient.16.dylib
>  /usr/local/mysql/lib/libmysqlclient.16.dylib: Mach-O 64-bit
> dynamically linked shared library x86_64
>
> I suspect you will find that yours is only 32 bit and not 64 bit. That
> is why you would get error:
>
>  Reason: image not found
>
> Can you run the 'file' command on the dylib and see what it says.
>
> Graham
>
> > BTW, I can import MySQLdb with no problem under python interpreter.
> > I am using python2.7 in a virtual environment created by virtualenv. Here
> is
> > the error info extracted from the Apache error log. To make the lines
> > shorter, I deleted all the time tags in the brackets.
> > Any ideas how to fix it?
> > [] mod_wsgi (pid=3136): Target WSGI script
> > '/Users/jianbao/projects/tao.com/mysite/apache/django.wsgi' cannot be
> loaded
> > as Python module.
> > [] mod_wsgi (pid=3136): Exception occurred processing WSGI script
> > '/Users/jianbao/projects/tao.com/mysite/apache/django.wsgi'.
> > [] Traceback (most recent call last):
> > []   File "/Users/jianbao/projects/tao.com/mysite/apache/django.wsgi",
> line
> > 56, in <module>
> > []     import MySQLdb
> > []   File
> > "/Users/jianbao/projects/
> tao.com/mysite/lib/python2.7/site-packages/MySQLdb/__init__.py",
> > line 19, in <module>
> > []     import _mysql
> > [] ImportError:
> > dlopen(/Users/jianbao/projects/
> tao.com/mysite/lib/python2.7/site-packages/_mysql.so,
> > 2): Library not loaded: libmysqlclient.18.dylib
> > []   Referenced from:
> > /Users/jianbao/projects/
> tao.com/mysite/lib/python2.7/site-packages/_mysql.so
> > []   Reason: image not found
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "modwsgi" group.
> > To view this discussion on the web visit
> > https://groups.google.com/d/msg/modwsgi/-/_S2GuYUGqosJ.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > For more options, visit this group at
> > http://groups.google.com/group/modwsgi?hl=en.
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "modwsgi" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/modwsgi?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/modwsgi?hl=en.

Reply via email to