PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

erro ao instalar psycopg2, biblioteca não encontrada para -lssl


Para quem procura uma solução para isso no macOS Sierra 10.12 (ou posterior, provavelmente):consertei isso instalando as ferramentas de linha de comando:
xcode-select --install

Depois disso, pip install psycopg2 Deveria trabalhar.

Se isso não acontecer, você também pode tentar vincular o openssl do brew:
env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip install psycopg2

com openssl instalado via brew. Observe que o brew link openssl --force não funciona mais:
$ brew link openssl --force                                                                                 17.5s
Warning: Refusing to link: openssl
Linking keg-only openssl means you may end up linking against the insecure,
deprecated system OpenSSL while using the headers from Homebrew's openssl.
Instead, pass the full include/library paths to your compiler e.g.:
  -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib

Como @macho aponta abaixo, se isso ainda não funcionar, talvez seja necessário usar o --no-cache opção de pip, por exemplo
env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip --no-cache install psycopg2

Lembre-se de ajustar esses caminhos de acordo se você, por exemplo, compilar em Macs ARM/Apple M1 (já que o homebrew está instalado em /opt/homebrew/ ); comando da seguinte forma:
env LDFLAGS="-I/opt/homebrew/opt/openssl/include -L/opt/homebrew/opt/openssl/lib" pip --no-cache install psycopg2