我在这个问题上被困了一段时间了。在我的Mac上安装了psycpg2之后,我有一个朋友帮我安装了它:
env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip3 install psycopg2
然后我导入了psycopg2
我试图运行我的db程序并得到了以下错误:
Traceback (most recent call last):
File "postgresdemo.py", line 1, in <module>
import psycopg2
File "/Users/nkosana/Library/Python/3.7/lib/python/site-packages/psycopg2/__init__.py", line 51, in <module>
from psycopg2._psycopg import ( # noqa
ImportError: dlopen(/Users/nkosana/Library/Python/3.7/lib/python/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so, 2): Symbol not found: _PQencryptPasswordConn
Referenced from: /Users/nkosana/Library/Python/3.7/lib/python/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so
Expected in: /usr/lib/libpq.5.dylib in /Users/nkosana/Library/Python/3.7/lib/python/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so
系统与版本
MacOS Catalina (10.15.4)
psycopg2-2.8.5
Python 3.7.3
我会感谢你的帮助,谢谢提前。
发布于 2020-09-03 21:28:17
我也遇到了同样的问题:
Symbol not found: _PQencryptPasswordConn
Referenced from: /Users/Lynda/pgproject/pgprojectenv/lib/python3.7/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so
Expected in: /usr/lib/libpq.5.dylib
对我起作用的是将/usr/local/lib添加到路径,并创建一个符号链接,从PostgreSQL/lib到/usr/local/lib。
cd /usr/local/lib
ln -s /Users/Lynda/PostgreSQL/lib/libpq.5.12.dylib ./libpq.5.dylib
有一个答案可以修复这个lib错误,并更好地解释为什么会发生这种情况,以及如何在这里修复它-- Mac OS X Lion Psycopg2: Symbol not found: _PQbackendPID。
https://stackoverflow.com/questions/61694261
复制相似问题