LoginSignup
3
0

More than 1 year has passed since last update.

【解決法】Error: pg_config executable not found.

Last updated at Posted at 2022-09-30

エラー対処

ライブラリインストール時のエラーを書き留めておきます

事前コマンド

$ cd ~/対象プロジェクトまでのpath
$ python -m venv env # pythonの実行環境を仮想的に作成(envは名称なので任意でOK)
$ . env/bin/activate # 作成した仮想環境のバッチを実行し、仮想環境への切り替えを行う
requirements.txt
省略
psycopg2==2.9.3

エラー発生

$ pip install -r requirements.txt # 一括でライブラリをインストール
terminal
(env) (base) sample@SampleMBP 対象プロジェクト % pip install -r requirements.txt
Collecting asgiref==3.2.10
  Using cached asgiref-3.2.10-py3-none-any.whl (19 kB)
Collecting beautifulsoup4==4.11.1
  Using cached beautifulsoup4-4.11.1-py3-none-any.whl (128 kB)
途中省略
Collecting gunicorn==20.1.0
  Using cached gunicorn-20.1.0-py3-none-any.whl (79 kB)
Collecting psycopg2==2.9.1
  Using cached psycopg2-2.9.1.tar.gz (379 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [23 lines of output]
      running egg_info
      creating /private/var/folders/yq/492f1qrn6ylcdzjx1mfwbjv40000gn/T/pip-pip-egg-info-7v1vq56z/psycopg2.egg-info
      writing /private/var/folders/yq/492f1qrn6ylcdzjx1mfwbjv40000gn/T/pip-pip-egg-info-7v1vq56z/psycopg2.egg-info/PKG-INFO
      writing dependency_links to /private/var/folders/yq/492f1qrn6ylcdzjx1mfwbjv40000gn/T/pip-pip-egg-info-7v1vq56z/psycopg2.egg-info/dependency_links.txt
      writing top-level names to /private/var/folders/yq/492f1qrn6ylcdzjx1mfwbjv40000gn/T/pip-pip-egg-info-7v1vq56z/psycopg2.egg-info/top_level.txt
      writing manifest file '/private/var/folders/yq/492f1qrn6ylcdzjx1mfwbjv40000gn/T/pip-pip-egg-info-7v1vq56z/psycopg2.egg-info/SOURCES.txt'

      Error: pg_config executable not found.

      pg_config is required to build psycopg2 from source.  Please add the directory
      containing pg_config to the $PATH or specify the full executable path with the
      option:

          python setup.py build_ext --pg-config /path/to/pg_config build ...

      or with the pg_config option in 'setup.cfg'.

      If you prefer to avoid building psycopg2 from source, please install the PyPI
      'psycopg2-binary' package instead.

      For further information please check the 'doc/src/install.rst' file (also at
      <https://www.psycopg.org/docs/install.html>).

      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

Xcodeは事前にインストール済み

$ xcode-select --install
(env) (base) sample@SampleMBP 対象プロジェクト % xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

解決法

$ brew install postgresql
  • postgresqlをインストール後に再実行
terminal
(env) (base) sample@SampleMBP 対象プロジェクト % pip install -r requirements.txt
Collecting asgiref==3.2.10
  Using cached asgiref-3.2.10-py3-none-any.whl (19 kB)
Collecting beautifulsoup4==4.11.1
  Using cached beautifulsoup4-4.11.1-py3-none-any.whl (128 kB)

途中省略

Collecting dj-database-url>=0.5.0
  Downloading dj_database_url-0.5.0-py2.py3-none-any.whl (5.5 kB)
Collecting pyjwt[crypto]>=1.7
  Downloading PyJWT-2.4.0-py3-none-any.whl (18 kB)
Using legacy 'setup.py install' for django-allauth, since package 'wheel' is not installed.
Using legacy 'setup.py install' for psycopg2, since package 'wheel' is not installed.
Installing collected packages: pytz, django-widget-tweaks, dj-database-url, certifi, whitenoise, urllib3, sqlparse, soupsieve, PyJWT, pycparser, psycopg2, oauthlib, idna, gunicorn, defusedxml, charset-normalizer, asgiref, requests, python3-openid, Django, cffi, beautifulsoup4, requests-oauthlib, django-heroku, django-bootstrap4, cryptography, django-allauth
  Running setup.py install for psycopg2 ... done
  Running setup.py install for django-allauth ... done
Successfully installed Django-3.1.2 PyJWT-2.3.0 asgiref-3.2.10 beautifulsoup4-4.11.1 certifi-2021.10.8 cffi-1.15.0 charset-normalizer-2.0.12 cryptography-36.0.2 defusedxml-0.7.1 dj-database-url-0.5.0 django-allauth-0.50.0 django-bootstrap4-2.3.1 django-heroku-0.3.1 django-widget-tweaks-1.4.8 gunicorn-20.1.0 idna-3.3 oauthlib-3.2.0 psycopg2-2.9.3 pycparser-2.21 python3-openid-3.2.0 pytz-2022.1 requests-2.27.1 requests-oauthlib-1.3.1 soupsieve-2.3.2.post1 sqlparse-0.4.2 urllib3-1.26.9 whitenoise-6.2.0

完了

3
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0