【发布时间】:2011-03-04 22:15:21
【问题描述】:
我在这方面已经有一段时间了,并阅读了许多有关该主题的网站。怀疑我在撒谎导致这个问题。但是在哪里?
这是我在python中导入MySQLdb时的错误:
>>> import MySQLdb
/Library/Python/2.6/site-packages/MySQL_python-1.2.3c1-py2.6-macosx-10.6-universal.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /Library/Python/2.6/site-packages/MySQL_python-1.2.3c1-py2.6-macosx-10.6-universal.egg/_mysql.pyc, but /Users/phoebebr/Downloads/MySQL-python-1.2.3c1 is being added to sys.path
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "MySQLdb/__init__.py", line 19, in <module>
import _mysql
File "build/bdist.macosx-10.6-universal/egg/_mysql.py", line 7, in <module>
File "build/bdist.macosx-10.6-universal/egg/_mysql.py", line 6, in __bootstrap__
ImportError: dlopen(/Users/phoebebr/.python-eggs/MySQL_python-1.2.3c1-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so, 2): no suitable image found. Did find:
/Users/phoebebr/.python-eggs/MySQL_python-1.2.3c1-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so: mach-o, but wrong architecture
我正在尝试 64 位,所以在这里检查:
file $(which python)
/usr/bin/python: Mach-O universal binary with 3 architectures
/usr/bin/python (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/python (for architecture i386): Mach-O executable i386
/usr/bin/python (for architecture ppc7400): Mach-O executable ppc
file $(which mysql)
/usr/local/mysql/bin/mysql: Mach-O 64-bit executable x86_64
已将我的默认 python 版本设置为 2.6
python
Python 2.6.1 (r261:67515, Feb 11 2010, 00:51:29)
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
尝试删除构建目录和 python setup.py clean 重命名了 Python/2.5/site-packages,因此它无法尝试获取它。
更新
删除所有内容并按照此处的说明进行操作:Django + MySQL on Mac OS 10.6.2 Snow Leopard 使用 macports 安装。
但基本上还是报同样的错误
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/MySQLdb/__init__.py", line 19, in <module>
import _mysql
ImportError: dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/_mysql.so, 2): no suitable image found. Did find:
/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/_mysql.so: mach-o, but wrong architecture
>>>
【问题讨论】:
-
您的 库(
_mysql.soin/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/_mysql.so)是错误的架构(很可能是 32 位)。你快到了。 :) -
遗憾的是,尝试从源代码重建导致错误 The-Black-Book-2:MySQL-python-1.2.3 phoebebr$ ARCHFLAGS='-arch x86_64' python setup.py build sh: mysql_config: command not found 卸载了所有的macports安装并再次从头开始重新安装,希望这次所有版本都匹配。
-
OK 卸载了所有 macports 安装,删除了我硬盘上与 mysql 相关的所有内容。从 mysql 站点上的包中安装 mysql,下载 python-mysql 并使用我最初使用的相同指令构建它,只是这次它起作用了。不知道这次有什么不同,但它正在起作用......感谢 jdinuncio 和 belvoir - 你们都是对的,但必须选择一个,所以选择了第一个回应的人!希望这没问题。
-
从昨晚开始,我一直在使用 MySQLDB。我的配置:Mac OS X 10.5.8;蟒蛇2.5;已使用 DMG 下载并安装了 64 位 MySQL;使用他们的自述文件安装 MySQLDB;我得到了问题中提到的错误。在其他网站上尝试了不同的方法。 Pekka Toiminen 2 月 22 日 17:08 发表的最后一篇文章中的解决方案对我有用。谢谢!
标签: python mysql installation