Python 32位在OS X Lion上找不到MySQLdb模块
我一直在抓狂,试图让Python和MySQL在64位架构下正常工作,但解决方案似乎是所有组件都要以32位运行。
我的问题是,出于某种原因,我通过以下命令以32位模式运行Python:
$ arch -i386 /System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
然后我尝试:
import MySQLdb
结果给我了:
import MySQLdb Traceback (most recent call last): File "", line 1, in ImportError: No module named MySQLdb
但是,当我以64位模式运行Python并尝试'import MySQLdb'时,我遇到了可怕的错误:
import MySQLdb Traceback (most recent call last): File "", line 1, in File "build/bdist.macosx-10.6-intel/egg/MySQLdb/init.py", line 19, in File "build/bdist.macosx-10.6-intel/egg/_mysql.py", line 7, in File "build/bdist.macosx-10.6-intel/egg/_mysql.py", line 6, in bootstrap ImportError: dlopen(/Users/me/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so, 2): no suitable image found. Did find: /Users/me/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so: mach-o, but wrong architecture
所以我的问题是,为什么Python在32位模式下找不到这个模块?“错误的架构”提示我认为MySQL-python是以32位安装的,所以我觉得不是32位的Python看不到这个模块。我在.bash_profile中将python和.python-eggs的路径都添加到了$PATH中,那我到底缺少了什么呢?