Python错误 - psycopg2: 没有适当的64位架构?

1 投票
1 回答
2283 浏览
提问于 2025-04-16 02:09

我在使用Mac OSX。直到今天,我的Python 2.6和psycopg2运行得很好,我一直在用它做Django和Pylons的项目。刚刚我重新安装了Postgres(我不知道这是否有关系),结果突然我在Python中无法导入psycopg2,出现了一个奇怪的错误:

>>> import psycopg2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "build/bdist.macosx-10.6-universal/egg/psycopg2/__init__.py", line 69, in <module>
  File "build/bdist.macosx-10.6-universal/egg/psycopg2/_psycopg.py", line 7, in <module>
  File "build/bdist.macosx-10.6-universal/egg/psycopg2/_psycopg.py", line 6, in __bootstrap__
ImportError: /usr/lib/libpq.5.dylib: no appropriate 64-bit architecture (see "man python" for running in 32-bit mode)

尝试用Python 2.5也出现了类似的错误:

>>> import psycopg2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/local/lib/python2.5/site-packages/psycopg2/__init__.py", line 69, in <module>
    from _psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID
ImportError: dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/psycopg2/_psycopg.so, 2): Library not loaded: /opt/local/lib/postgresql84/libpq.5.dylib
  Referenced from: /opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/psycopg2/_psycopg.so
  Reason: no suitable image found.  Did find:
        /usr/lib/libpq.5.dylib: no matching architecture in universal wrapper

我完全不知道这是什么意思,为什么会出现这个错误,也不知道该怎么解决。请问有人能帮帮我吗?

1 个回答

0

你是不是刚刚升级到Snow Leopard系统?在Leopard版本的Python是32位的,而在Snow Leopard里是64位的。这会导致一些使用本地代码的库出现问题,因为这些库在64位模式下是不可用的。

撰写回答