【Python】Command “python setup.py egg_info” failed with error code 1 in pywinptyが出た時の対処法

概要

Pythonの3.6.8環境にjupyterlabをpipでインストールした際に、pywinptyのインストール部分で次のようなエラーが発生したため、対処法についてメモします。

発生したエラー

Anacondaなどを使用している場合にはjupyter notebookがバンドルされているためあまりないかもしれませんが、今回は純粋なPython環境(3.8,6)にJupyterをインストールしている場合になります。

pip install jupyterlabでJupyterlabをインストールしたところ以下のエラーが発生しました。

Collecting pywinpty>=1.1.0; os_name == “nt” (from terminado>=0.8.3->jupyter-server~=1.4->jupyterlab)
Downloading https://files.pythonhosted.org/packages/c3/61/bda90dba80bc6cb905acebd0bf0710777ab04feb29d0f438202da0e82d72/pywinpty-2.0.3.tar.gz
Installing build dependencies … done
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File “”, line 1, in
File “C:\Users\User\AppData\Local\Programs\Python\Python36\lib\tokenize.py”, line 452, in open
buffer = _builtin_open(filename, ‘rb’)
FileNotFoundError: [Errno 2] No such file or directory: ‘C:\Users\User\AppData\Local\Temp\pip-install-thh03r3w\pywinpty\setup.py’
—————————————————————————-
Command “python setup.py egg_info” failed with error code 1 in C:\Users\User\AppData\Local\Temp\pip-install-thh03r3w\pywinpty\

どうやらpywinptyをインストールする際にエラーが発生した模様です。

対処法

エラーメッセージを見てみると、pywinptyの1.1.0を取りに行っているのにもかかわらず、pywinptyの2.0.3を探しているようでした。取得先はhttps://files.pythonhosted.orgです。このあたりが怪しいと感じました。

Collecting pywinpty>=1.1.0; os_name == “nt” (from terminado>=0.8.3->jupyter-server~=1.4->jupyterlab)
Downloading https://files.pythonhosted.org/packages/c3/61/bda90dba80bc6cb905acebd0bf0710777ab04feb29d0f438202da0e82d72/pywinpty-2.0.3.tar.gz

対処方針として手動でpywinptyのバージョン1.1.0をインストールしようと思います。

PyPIを確認したところ、pywinptyのバージョンは2.0.5が検索されました。

今回はpip時にバージョンを指定した上でインストールします。

pip install pywinpty==1.1.0

その後、再度pip install jupyterlabを実行したところ、先ほどのエラーは出ずに先に進むことができました。

Requirement already satisfied: pywinpty>=1.1.0; os_name == “nt” in c:\users\User\appdata\local\programs\python\python36.venv\lib\site-packages (from terminado>=0.8.3->jupyter-server~=1.4->jupyterlab) (1.1.0)ty\

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です