web-dev-qa-db-ja.com

setuptoolsのインストール時にvirtualenvがハングアップした

最近までこの問題はありませんでしたが、新しい仮想環境(windows 7、python 2.7.13、virtualenv == 15.1.0)を作成しようとすると、「setuptoolsのインストール」、ピップ、ホイール...」とcrtl ^ cを実行すると、これが得られます:

PS C:\Users\John\Envs> virtualenv.exe rmapvenv
New python executable in C:\Users\John\Envs\test\Scripts\python.exe
Installing setuptools, pip, wheel...done.
Traceback (most recent call last):
  File "c:\python27\lib\runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "c:\python27\lib\runpy.py", line 72, in _run_code
    exec code in run_globals
  File "C:\Python27\Scripts\virtualenv.exe\__main__.py", line 9, in <module>
  File "c:\python27\lib\site-packages\virtualenv.py", line 713, in main
    symlink=options.symlink)
  File "c:\python27\lib\site-packages\virtualenv.py", line 945, in create_environment
    download=download,
  File "c:\python27\lib\site-packages\virtualenv.py", line 901, in install_wheel
    call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
  File "c:\python27\lib\site-packages\virtualenv.py", line 769, in call_subprocess
    line = stdout.readline()
KeyboardInterrupt

virtualenv.pyにいくつかのprintステートメントを追加すると、これが得られます:

Running command C:\Users\John\Envs\test\Scripts\python.exe - setuptools pip wheel

Collecting setuptools

  Using cached setuptools-35.0.1-py2.py3-none-any.whl

Collecting pip

Collecting wheel

車輪に引っかかっているようです

14
John

使用 -vスイッチは、詳細出力を取得します。

私にとっては、ネットワーク接続でした。具体的には、virtualenvを使用しようとしていたサーバーがインターネットからファイアウォールで保護されていたため、プロキシ経由で抜け出す必要がありました。ただし、virtualenvは環境内のプロキシ設定を尊重していないようで、コマンドラインスイッチはありません。

したがって、pipを使用して、必要な3つのパッケージを事前キャッシュ/事前ダウンロードします。

Sudo pip download setuptools pip wheel --proxy http://<yourproxyhere>

その後、virtualenvを実行すると、ダウンロードしたキャッシュパッケージが使用されます。

12
Pretzel

すべてはホイールがインストールされていないことを中心に展開しているように見えたので、誰かがこれを説明できるなら、してください。これは、インストールするために私がやったことです。私が走った:

virtualenv venv --no-wheel

次に、仮想環境をアクティブにして実行しました:

pip install --upgrade pip
pip install setuptools --no-use-wheel --upgrade
pip install wheel --no-cache

そして私が知る限り、すべてが機能します

2
John

私はvenvをインストールするためにpipenvを使用していました:

$ pipenv install
Creating a virtualenv for this project…
Pipfile: /home/seba/Sources/neogeo/grandlyon/photon-setup/Pipfile
Using /usr/bin/python3 (3.6.7) to create virtualenv…
⠦ Creating virtual environment...

詳細モードでは詳細情報が得られませんでした、--clearは役に立たなかったが、ps auxfオイソンプロセスが何も待っていないのを見た:

 [...] S+   09:59   0:00  |   |       \_ /home/seba/Sources/neogeo/grandlyon/photon-setup/venv/bin/python3 - setuptools pip wheel

Setuptoolsのインストールを停止しました。

通常どおりvirtualenvを作成すると、これが確認されました。

$ virtualenv -vv --python=python3 venv
[...]
Running command /home/seba/Sources/n...tup/venv/bin/python3 - setuptools pip wheel
Looking in links: /usr/local/lib/python3.6/dist-packages/virtualenv_support
Collecting setuptools
[Waiting forever]

修正により、pipキャッシュが削除されました。

$ rm -Rf ~/.cache/pip/ ~/.cache/pip-tools/
1

私もこれに遭遇しましたが、上記の答えはどれもうまくいきませんでした。不正なキャッシュエントリであることが判明しました。

$ virtualenv -vv venv次で終わる出力が表示されます。

Running command /Users/ghartmann/cod...test/venv/bin/python - setuptools pip wheel
Collecting setuptools
    Cache entry deserialization failed, entry ignored

それはそこでブロックし、中断すると、wheelパッケージのダウンロードがブロックされたことを示すスタックが表示されます。

Macosでは、pipキャッシュは次のとおりです。~/Library/Caches/pip
そのディレクトリを削除すると、キャッシュを再初期化できたため、問題が修正されました。

1
Gabriel

私はpipenvを使用して企業のファイアウォールの内側にいました。 Pipfileがローカルパッケージインデックス(PyPiではない)を指していたとしても、pipが呼び出したpipenvはまだPyPiを使用しようとしていて、

/home/eric/.local/share/virtualenvs/venv/bin/python - setuptools pip wheel

私にとっての解決策は、インデックスURLをpip.confまたはPIP_INDEX_URL環境変数、たとえば:

PIP_INDEX_URL=http://my.corporate.index/simple pipenv lock
0
sourcedelica

それが役立つかどうかはわかりませんが、Linux debian(正確にはraspbian Jessie light)およびpython 3.6。virtualenvの作成時にホイールがハングしましたが、 ctrl-c(python 3.6およびlinuxパス)を使用した後、あなたと同じエラーメッセージが表示されました。その後、インターネット接続の問題に気づきませんでした。

0
calocedrus