在M1上导入psycopg2时出现ImportError。

9
有人在成功安装后导入psycopg2时遇到过这个错误吗?
ImportError: dlopen(/Users/chrishicks/Desktop/test/venv/lib/python3.9/site-packages/psycopg2/_psycopg.cpython-39-darwin.so, 0x0002):
tried: '/Users/chrishicks/Desktop/test/venv/lib/python3.9/site-packages/psycopg2/_psycopg.cpython-39-darwin.so'
(mach-o file, but is an incompatible architecture
(have 'x86_64', need 'arm64e')),
'/usr/local/lib/_psycopg.cpython-39-darwin.so' (no such file),
'/usr/lib/_psycopg.cpython-39-darwin.so' (no such file)

我尝试安装了psycopg2psycopg2-binary,同时在Rosetta下运行iTerm也进行了尝试。


欢迎来到SO。请说明您正在使用的操作系统。 - ewokx
1
你是用什么方式安装的?brew还是pip?我刚刚尝试使用pip3在M1上安装,一切正常! - Hossein Heydari
嗨 @ewong,谢谢。我正在使用 Monterey 12.2.1。 - chrishicks
2个回答

32

使用这行代码应该可以解决问题:

pip3.9 install psycopg2-binary --force-reinstall --no-cache-dir

3
哇,那起作用了!非常感谢您,女士! - chrishicks
当然可以!为Hicks LLC做任何事情! - samrizz4
不,我仍然只有那个错误。 - Hardy

2

我的同事也遇到了同样的问题。 我安慰他尝试pip3.9 install psycopg2-binary --force-reinstall --no-cache-dir,但这对他没有起作用。 我通过以下方式帮助他解决了问题: 首先,卸载psycopg2-binary

pip uninstall psycopg2-binary

然后,安装它。
pip install psycopg2-binary

@hardy


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接