pip install時の「“python setup.py egg_info” failed ...」エラー



Page content

Pythonでpip installしようとした時、表題のエラーで躓くことがあった。




“python setup.py egg_info” failed

Command “python setup.py egg_info” failed with error code 1 in ...

のエラーが起きる原因は大きく分けて二つ。

  • pip / setuptoolsが最新でない
  • 必要なライブラリが無い

pip / setuptoolsが最新でない

こちらの場合は、単純にこれらをupgradeすればよい。

$ pip install --upgrade pip setuptools

必要なライブラリが無い

こちらはライブラリによって異なるので一概には言えないが、エラーを読むと何が足りないか書いてあったりする。


psycopg2のインストール

今回の現象は以下。

$ pip install psycopg2
...
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:
...
`Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-ta2iundk/psycopg2/`

エラーを見ると、必要なライブラリが無いの方のケースだとわかる。

無いと言われているpg_configをググると、環境ごとに以下のパッケージに含まれていることがわかる。

  • postgresql-devel(CentOS)
  • libpq-dev(Debian/Ubuntu)
  • postgresql(MacOS)

なので、環境によってそれぞれ以下のコマンドでインストールする。

  • CentOS

    $ yum install postgresql-devel
  • Debian/Ubuntu

    $ apt-get install libpq-dev
  • MacOS

    $ brew install postgresql

自分はUbuntu環境なので、aptでインストールし、再度psycopg2を入れてみる。

$ apt-get install libpq-dev

$ pip install psycopg2

おわり

無事入りました。



CodeCampGATE
CodeCampGATE