pythonとpostgresqlを繋ぐライブラリとしてpsycopgがあるらしいので導入しようとしたが、なかなかインストールに手こずったのでメモ。
最終的にhttps://rikeiblog.com/python-18/
を参考に、コマンドラインをダウングレードすることでインストールできた。
pip install psycopg2
pip3 install psycopg2を実行するとエラー
ERROR: Command errored out with exit status 1:
command: /Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/0d/kn7w1rj50mz8s1lpp6tyng2c0000gt/T/pip-install-2rih1wyp/psycopg2_aa03eb35d88c42c2815696730016a56b/setup.py'"'"'; ....
env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip --no-cache install psycopg2
も同じようなエラーが出る
WARNING: You are using pip version 21.1.1; however, version 21.1.2 is available.
You should consider upgrading via the '/usr/local/opt/python@3.9/bin/python3.9 -m pip install --upgrade pip' command.
みたいなことを言われたので素直に従う
/usr/local/opt/python@3.9/bin/python3.9 -m pip install --upgrade pip
もう一度以下を打つがエラー
env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip --no-cache install psycopg2
brew install llvm
brew install gcc
をした後にenv LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip --no-cache install psycopg2
エラー文中の
ld: unsupported tapi file type
でググったところhttps://rikeiblog.com/python-18/
を見つけコマンドラインをダウングレードすることでインストールできた。