web-dev-qa-db-fra.com

configuration de l’environnement dans virtualenv avec python3 bloqué sur setuptools, pip, wheel

En cours d'exécution: 

virtualenv -p python3 venv

donne: 

Running virtualenv with interpreter /usr/bin/python3
Using base prefix '/usr'
New python executable in /specific/a/home/cc/students/csguests/taivanbatb/venv/bin/python3
Also creating executable in /specific/a/home/cc/students/csguests/taivanbatb/venv/bin/python
Installing setuptools, pip, wheel...

qui est où il se coince. 

Appeler CTRL-C donne: 

  File "/usr/local/bin/virtualenv", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 671, in main
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 2328, in <module>
    raise SystemExit(popen.wait())
  File "/usr/lib/python2.7/subprocess.py", line 1376, in wait
    pid, sts = _eintr_retry_call(os.waitpid, self.pid, 0)
  File "/usr/lib/python2.7/subprocess.py", line 476, in _eintr_retry_call
    return func(*args)
KeyboardInterrupt
    main()
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 713, in main
    symlink=options.symlink)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 945, in create_environment
    download=download,
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 901, in install_wheel
    call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 769, in call_subprocess
    line = stdout.readline()
KeyboardInterrupt

Similaire à ceci

Comme suggéré dans la question liée, j'ai essayé d'installer avec --no-wheel mais en vain. Et je suis sûr que ce n'est pas un problème de connectivité réseau car la configuration d'un environnement utilisant python2 à l'aide de virtualenv env ne génère aucune erreur. 

Les versions spécifiques de tous les packages que j'utilise sont les suivantes: 

python 3.4.0 python 2.7.6 virtualenv 15.1.0

28
Taevanbat Mongol

1.Vérifiez vos connexions Internet. 

2. Configurez python3 en tant qu'interprète python par défaut, car vous avez python2.7 en tant qu'interpréteur python par défaut. Essayez d'utiliser sans roue par:

virtualenv venv --no-wheel

Ensuite, activez virtualenv et exécutez: - 

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

Si vous êtes derrière un proxy, utilisez: -
Sudo pip download setuptools pip wheel --proxy http://<yourproxyhere> 

Après tout, ce virtualenv -p python3 venv fonctionne dans mon virtualenv parfaitement.
NOTE: En supposant que l'environnement virtuel est déjà défini sur votre système et que python3 est votre interpréteur par défaut.

Sinon, vous n'avez pas besoin de faire virtualenv -p python3 venv. Vous pouvez spécifier l'interpréteur python (présent dans le dossier/usr/bin/*) que vous voulez utiliser dans virtualenv et l'utiliser comme ceci: -
virtualenv --python =/usr/bin/pythonX.Y /home/nom_utilisateur/chemin/vers/nom_en_virtuel 

si vous voulez installer dans le répertoire de travail actuel, vous pouvez utiliser: -
virtualenv --python =/usr/bin/pythonX.Y nom_virtuel
R&EACUTE;F&EACUTE;RENCE

14
Vineet Jain

virtualenv est juste un paquet python. Et vous pouvez l'installer à la fois sur python2 et python3. 

D'après mon expérience, virtualenv sur python3 gère bien les deux versions de python. Votre stacktrace montre que vous utilisez virtualenv pour python2 - essayez de passer à python3.

Pour l'installer sur python3, lancez

pip3 install virtualenv

ou, si vous devez utiliser apt-get pour une raison quelconque,

apt-get install python3-virtualenv
0
gukoff

Votre trace de pile indique que vous utilisez virtualenv depuis votre installation 2.7. Cela indiquerait que votre PATH n'est pas défini sur 3.x. Démarrez un nouveau shell, définissez PATH de manière à ce que /usr/local/lib/python2.7 ne soit pas dessus et réessayez.

0
verisimilidude