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.
