ImportError: dlopen (...): символ не найден: _PQencryptPasswordConn - PullRequest
0 голосов
/ 09 мая 2020

Я застрял в этом вопросе какое-то время. После попытки установить psycpg2 на мой Ma c у меня есть друг, который помог мне установить его, используя это:

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

Буду признателен за вашу помощь, заранее спасибо.

1 Ответ

0 голосов
/ 04 сентября 2020

У меня была та же проблема, что и у вас:

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 в PATH и создание символьной c ссылки из моего PostgreSQL / lib на / usr / local / lib

cd /usr/local/lib
ln -s /Users/Lynda/PostgreSQL/lib/libpq.5.12.dylib ./libpq.5.dylib

Существует ответ, который исправляет эту ошибку библиотеки и лучше объясняет, почему это происходит и как это исправить здесь Ma c OS X Lion Psycopg2: Symbol не найдено: _PQbackendPID

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...