122 votes

bash : mkvirtualenv : commande non trouvée

Après avoir suivi les instructions sur Doug Hellman's virtualenvwrapper poste Je n'ai toujours pas pu lancer un environnement de test.

[mpenning@tsunami ~]$ mkvirtualenv test
-bash: mkvirtualenv: command not found
[mpenning@tsunami ~]$

Il faut noter que j'utilise WORKON_HOME qui n'est pas dans mon $HOME . J'ai essayé de chercher /usr/local/bin/virtualenvwrapper.sh comme indiqué dans le virtualenvwrapper documents d'installation mais il n'existe pas.

J'utilise CentOS 6 et python 2.6.6, si cela est important.


# File: ~/.bash_profile
# ...

export WORKON_HOME="/opt/virtual_env/"
source "/opt/virtual_env/bin/virtualenvwrapper_bashrc"

117voto

Mike Pennington Points 16712

Solution 1 :

Pour une raison quelconque, virtualenvwrapper.sh installé dans /usr/bin/virtualenvwrapper.sh au lieu de sous /usr/local/bin .

Ce qui suit dans mon .bash_profile travaille...

source "/usr/bin/virtualenvwrapper.sh"
export WORKON_HOME="/opt/virtual_env/"

Mon installation semble fonctionner correctement sans sourcing virtualenvwrapper_bashrc

Solution 2 :

Alternativement, comme mentionné ci-dessous, vous pouvez tirer parti de la possibilité que virtualenvwrapper.sh est déjà dans le répertoire de votre shell PATH et juste émettre un source `which virtualenvwrapper.sh`

71voto

Erich Points 616

Essayez :

source `which virtualenvwrapper.sh`

Les backticks sont des substitutions de commandes - ils prennent ce que le programme imprime et le mettent dans l'expression. Dans ce cas, "which" vérifie le $PATH pour trouver virtualenvwrapper.sh et sort le chemin d'accès à ce dernier. Le script est ensuite lu par le shell via 'source'.

Si vous voulez que cela se produise à chaque fois que vous redémarrez votre shell, il est probablement préférable de récupérer la sortie de la commande "which" d'abord, puis de mettre la ligne "source" dans votre shell, quelque chose comme ceci :

echo "source /path/to/virtualenvwrapper.sh" >> ~/.profile

^ Cela peut différer légèrement en fonction de votre shell. De plus, faites attention à ne pas utiliser l'unique > car cela tronquera votre ~/.profile :-o

44voto

Nick Benes Points 123

J'ai eu le même problème sur OS X 10.9.1 avec python 2.7.5. Aucun problème avec WORKON_HOME pour moi, mais j'ai dû ajouter manuellement source "/usr/local/bin/virtualenvwrapper.sh" a ~/.bash_profile (ou ~/.bashrc sous unix) après avoir lancé pip install virtualenvwrapper

28voto

Keshav Points 1352

Conditions préalables à l'exécution de cette commande -

  1. pip (acronyme récursif de P ip I nstalle P ackages) est un système de gestion de paquets utilisé pour installer et gérer des paquets logiciels écrits en Python. De nombreux paquets peuvent être trouvés dans le Python Package Index (PyPI).

    sudo apt-get install python-pip

  2. Installer l'environnement virtuel. Utilisé pour créer un environnement virtuel, pour installer les paquets et les dépendances de plusieurs projets isolés les uns des autres.

    sudo pip install virtualenv

  3. Installer l'enveloppe de l'environnement virtuel À propos du wrapper d'env. virtuel

    sudo pip install virtualenvwrapper

Après avoir installé les prérequis vous devez mettre en action le wrapper d'environnement virtuel pour créer un environnement virtuel. Voici les étapes à suivre

  1. définir le répertoire de l'environnement virtuel dans la variable de chemin- export WORKON_HOME=(directory you need to save envs)

  2. source /usr/local/bin/virtualenvwrapper.sh -p $WORKON_HOME

Comme mentionné par @Mike, la source `qui virtualenvwrapper.sh` ou which virtualenvwrapper.sh peut être utilisé pour localiser le fichier virtualenvwrapper.sh.

Il est préférable de mettre les deux lignes ci-dessus dans ~/.bashrc pour éviter d'exécuter les commandes ci-dessus chaque fois que vous ouvrez un nouveau shell. C'est tout ce dont vous avez besoin pour créer un environnement à l'aide de mkvirtualenv

Points à garder à l'esprit -

  • Sous Ubuntu, vous devrez peut-être installer virtualenv et virtualenvwrapper en tant que Root. Il suffit de préfixer la commande ci-dessus par sudo.
  • Selon le processus utilisé pour installer virtualenv, le chemin d'accès à virtualenvwrapper.sh peut varier. Trouvez le chemin approprié en exécutant $ find /usr -name virtualenvwrapper.sh. Ajustez la ligne dans votre .bash_profile ou .bashrc script en conséquence.

18voto

Hemanth SP Points 415

Utilisez cette procédure pour créer un environnement virtuel sous ubuntu.

Étape 1

Installer pip

   sudo apt-get install python-pip

étape 2

Installer virtualenv

   sudo pip install virtualenv

étape 3

Créez un répertoire pour stocker vos virtualenvs (j'utilise ~/.virtualenvs).

   mkdir ~/.virtualenvs

ou utilisez cette commande pour installer une version spécifique de python dans l'env.

virtualenv -p /usr/bin/python3.6 venv

étape 4

   sudo pip install virtualenvwrapper

étape 5

   sudo nano ~/.bashrc

étape 6

Ajoutez ce code de deux lignes à la fin du fichier bashrc

  export WORKON_HOME=~/.virtualenvs
  source /usr/local/bin/virtualenvwrapper.sh

étape 7

Ouvrir un nouveau terminal (recommandé)

étape 8

Créer un nouveau virtualenv

  mkvirtualenv myawesomeproject

étape 9

Pour charger ou basculer entre les virtualenvs, utilisez la commande workon :

  workon myawesomeproject

étape 10

Pour quitter votre nouveau virtualenv, utilisez

 deactivate

et assurez-vous d'utiliser pip contre pip3

OU suivez les étapes ci-dessous pour installer l'environnement virtuel en utilisant python3

Installer env

python3 -m venv my-project-env

et activez votre environnement virtuel en utilisant la commande suivante :

source my-project-env/bin/activate

ou si vous voulez une version particulière de python

virtualenv --python=python3.7.5 myenv

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