macOS Sierra 10.12(またはそれ以降)でこれに対する解決策を探している人のために:コマンドラインツールをインストールしてこれを修正しました:
xcode-select --install
その後、pip install psycopg2
動作するはずです。
そうでない場合は、brewのopensslに対してリンクを試みることもできます:
env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip install psycopg2
brewを介してopensslがインストールされています。 brew link openssl --force
に注意してください 動作しなくなりました:
$ 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
@machoがこれでも機能しない場合は以下で指摘しているように、--no-cache
を使用する必要があるかもしれません。 ピップのオプション、例:
env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip --no-cache install psycopg2
たとえば、ARM / Apple M1 Macでビルドする場合は、これらのパスを適宜調整することを忘れないでください(homebrewは/opt/homebrew/
にインストールされているため) );次のようにコマンドを実行します:
env LDFLAGS="-I/opt/homebrew/opt/openssl/include -L/opt/homebrew/opt/openssl/lib" pip --no-cache install psycopg2