Подтвердить что ты не робот

Virtualenv зависает при установке setuptools

никогда не было этой проблемы до недавнего времени, но при попытке создать новую виртуальную среду (windows 7, python 2.7.13, virtualenv == 15.1.0) она просто зависает на "Установка setuptools, pip, wheel..." и выполнение 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 дает мне следующее:

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

он, кажется, повесил на колесе

4b9b3361

Ответ 1

Используйте переключатель -v, чтобы получить вывод Verbose.

Для меня это было сетевое подключение. В частности, сервер, который я пытался использовать virtualenv on, был межсетевым экраном из Интернета, и мне нужно было выйти через прокси. Кроме того, что virtualenv, похоже, не уважает настройки прокси-сервера в среде и не имеет ключа командной строки.

Поэтому используйте pip для предварительного кэширования/предварительной загрузки 3 необходимых пакетов:

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

Затем вы можете запустить virtualenv, и он будет использовать загруженные вами кешированные пакеты.

Ответ 2

Казалось, все вращается вокруг неустановленного колеса, поэтому, если кто-то может это объяснить, пожалуйста, сделайте это. это то, что я сделал, чтобы заставить его установить. Я побежал:

virtualenv venv --no-wheel

затем активировал мою виртуальную среду и запустил:

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

и, насколько я могу судить, все работает

Ответ 3

Я столкнулся с этим также, и ни один из ответов выше не работал. Оказалось, плохая запись в кеше.

С $ 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.
Удаление этого каталога устранило проблему, так как он смог повторно инициализировать кеш.

Ответ 4

Я не уверен, поможет ли это, но у меня была такая же проблема, хотя и на linux debian (например, для Raspbian Jessie) и python 3.6. Колесо зависало при создании virtualenv, и я получил те же сообщения об ошибках, что и после ctrl-c (с путями python 3.6 и linux). После этого у меня были незаметные проблемы с подключением к Интернету.

Ответ 5

Я использовал pipenv для установки venv:

$ 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 я увидел, что процесс oython ничего не ждет:

 [...] 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]

Исправлено удаление кеша в пипсах:

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