28 votes

configuration de l'environnement dans virtaulenv en utilisant python3 bloqué sur setuptools, pip, wheel

Exécutant la commande suivante:

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 l'endroit où ça coince.

L'appel de 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

Semblable à cela.

Comme suggéré dans la question, j'ai essayé d'installer avec --no-wheel , mais en vain. Et je suis sûr que c'est pas un problème de connectivité réseau que la mise en place d'un environnement à l'aide de python2 l'aide d' virtualenv env ne donne aucune erreur.

Les versions spécifiques de tous les paquets que j'utilise sont comme suit:

python 3.4.0 python 2.7.6 virtualenv 15.1.0

15voto

Vineet Jain Points 851

1.Vérifiez vos connexions à internet.

2.Jeu de python3 en tant que par défaut de votre interpréteur python puisque vous avez python2.7 en tant que par défaut de votre interpréteur python. Essayez d'utiliser sans roue par:

virtualenv venv --no-wheel

Puis activer virtualenv et de l'exécution:-

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

Si vous êtes derrière proxy ensuite utiliser:-
sudo pip download setuptools pip wheel --proxy http://<yourproxyhere>

Après tout, c' virtualenv -p python3 venv travaille dans mon virtualenv parfaitement.
REMARQUE: en Supposant que l'environnement virtuel est déjà défini dans votre système et python3 est par défaut de votre interprète.

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

si vous souhaitez l'installer dans le répertoire de travail actuel, alors vous pouvez utiliser:-
virtualenv --python=/usr/bin/pythonX.Y virtualenv_name
RÉFÉRENCE

0voto

verisimilidude Points 323

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

0voto

gukoff Points 824

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, exécutez

 pip3 install virtualenv
 

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

 apt-get install python3-virtualenv
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X