web-dev-qa-db-de.com

virtualenv hat die Installation von Setuptools beendet

dieses Problem war bis vor kurzem noch nie aufgetreten. Wenn Sie jedoch versuchen, eine neue virtuelle Umgebung (Windows 7, Python 2.7.13, Virtualenv == 15.1.0) zu erstellen, hängt es einfach von "Installation von Setuptools, Pip, Wheel ..." und dem Ausführen ein crtl ^ c gibt dir folgendes:

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

durch das Hinzufügen einiger Druckanweisungen in virtualenv.py bekomme ich Folgendes:

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

es scheint am Rad aufgehängt zu sein

12
John

Verwenden Sie den Schalter -v, um eine ausführliche Ausgabe zu erhalten.

Für mich war es eine Netzwerkverbindung. Insbesondere der Server, auf dem ich virtualenv verwenden wollte, wurde über das Internet mit einer Firewall versehen, und ich musste über einen Proxy herauskommen. Abgesehen davon, dass virtualenv die Proxy-Einstellungen in der Umgebung nicht zu berücksichtigen scheint und es keinen Befehlszeilenschalter gibt.

Verwenden Sie also pip, um die 3 benötigten Pakete vorab im Cache zu speichern bzw. vorab herunterzuladen:

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

Dann können Sie virtualenv ausführen und die zwischengespeicherten Pakete verwenden, die Sie gerade heruntergeladen haben.

8
Pretzel

Alles schien sich um das Rad zu drehen, das nicht installiert wurde. Wenn dies jemand erklären kann, tun Sie dies bitte. Dies ist, was ich getan habe, um es zu installieren. Ich rannte:

virtualenv venv --no-wheel

dann aktivierte ich meine virtuelle Umgebung und lief:

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

und soweit ich das beurteilen kann, funktioniert alles

2
John

Ich habe pipenv verwendet, um ein venv zu installieren:

$ 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...

Im ausführlichen Modus habe ich keine weiteren Informationen erhalten, --clear war nutzlos, aber mit ps auxf Ich sah, dass der Oython-Prozess auf nichts wartete:

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

Die Installation von Setuptools kam zum Stillstand.

Das Erstellen einer virtuellen Umgebung wie gewohnt hat mir dies bestätigt:

$ 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]

Der Fix löschte den Pip-Cache:

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

Ich war hinter einer Unternehmens-Firewall mit pipenv. Obwohl der Pipfile auf unseren lokalen Paketindex (nicht auf PyPi) zeigte, versuchte der pip, den pipenv aufrief, PyPi zu verwenden und blieb bei

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

Die Lösung für mich war, entweder die Index-URL in pip.conf oder benutze den PIP_INDEX_URL Umgebungsvariable, zum Beispiel:

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

Ich bin nicht sicher, ob es helfen wird, aber ich hatte genau das gleiche Problem, allerdings unter Linux Debian (Raspbian Jessie Light, um genau zu sein) und Python 3.6. Das Rad hat sich beim Erstellen einer Virtualenv aufgehängt, und ich habe die gleichen Fehlermeldungen erhalten wie Sie nach einer Strg-C (mit Python 3.6 und Linux-Pfaden). Ich hatte dann unbemerkt Probleme mit der Internetverbindung, nachdem ich diese gelöst und das Rad ordnungsgemäß installiert hatte. 

0
calocedrus

Ich bin auch darauf gestoßen und keine der obigen Antworten hat funktioniert. Es stellte sich als schlechter Cache-Eintrag heraus.

Mit $ virtualenv -vv venv würde ich die Ausgabe erhalten mit:

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

Es würde dort blockieren, und wenn Sie unterbrochen wurden, würde der Stapel darauf hinweisen, dass das Herunterladen des Pakets wheel blockiert wurde.

Auf Macos ist der Pip-Cache hier: ~/Library/Caches/pip.
Durch das Entfernen dieses Verzeichnisses wurde das Problem behoben, da der Cache erneut initialisiert werden konnte.

0
Gabriel