【Python】「Command “python setup.py egg_info” failed with error code 1 in …」の対処法

プログラミングのKnow-howを共有しましょう

【Python】「Command “python setup.py egg_info” failed with error code 1 in …」の対処法

スポンサーリンク

Pythonのpipを用いてライブラリをインストールする際に、
Command “python setup.py egg_info” failed with error code 1 in …
というエラーが出てきたらどうすればいいのか、その対処法を記述しておきます。

このエラーが出力される原因には以下のパターンが存在するようです。

※この他にもあれば随時更新していきます

  • pip、setuptoolsが最新ではない
  • 必要となるライブラリがインスールされていない

それぞれについて見ていきましょう。

pip、setuptoolsが最新ではない

Pythonでライブラリをインストールする際に必須となるpip、setuptoolsが最新ではない場合にこのようなエラーが出るみたいです。
そんなときは以下のコマンドで両者をアップグレードしましょう。

必要となるライブラリがインスールされていない

私が起こった現象を例に紹介しましょう。
pip実行時に以下のようなエラーがTracebackと一緒に出力されました。

エラーに慣れていない最初のうちは一番下のエラーメッセージのみを見て、Googleで検索し始める方も多いかもしれません。ぱっと見た感じだと訳がわからないですしね。
しかし案外、単純でしっかり「どの部分で」「どんなエラーが発生したか」、丁寧なライブラリなら「対処法はどうなのか」という内容まで書いてあるものなのです。

それでは中を見てみましょう。

「Traceback」を見る

このような場合はまず「Traceback」と書かれている部分を見ます。
この例では4、19行目ですね。

そこから一番下の行まではどのソースファイルで、その中のどの行でなど「どの部分で」に該当します。
ここは今回見るべきではありません。重要なのは一番下の行です。

  • 4行目の「Traceback」の最後の行

この部分は「どんなエラーが発生したか」という内容になります。
少し英語が読める方なら、これが「’Quartz’というモジュールがないよ」という意味だとわかるでしょう。

  • 19行目の「Traceback」の最後の行

このライブラリは丁寧にも、「対処法はどうなのか」まで書いてくれています。
それがこの部分で「あなたはまず最初に’pyobic-core’と’pyobic’をインストールしなければいけない」と教えてくれているのです。

ここまで分かれば、後はその2つのライブラリのインストール方法をGoogleで検索し、インストールすればいいのです。

まとめ

私がこれまで遭遇したpip実行時に発生した「Command “python setup.py egg_info” failed with error code 1 in …」エラーについては上記の内容で解決することができましたが、もっと別のパターンも存在するかもしれません。

遭遇した場合、見かけた場合はまた追記していきたいと思います。