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"

7voto

Xen_mar Points 750

Puisque je viens de passer un coup de frein, je vais essayer d'écrire la réponse que j'aurais souhaité avoir il y a deux heures. C'est pour les personnes qui ne veulent pas seulement la solution du copier-coller.

D'abord : Vous vous demandez pourquoi le copier/coller de chemins d'accès fonctionne pour certaines personnes alors qu'il ne fonctionne pas pour d'autres ? ** La raison principale, les solutions diffèrent selon les versions de python, 2.x ou 3.x. Il existe en fait des versions distinctes de virtualenv et virtualenvwrapper qui fonctionnent avec python 2 ou 3. Si vous êtes sous python 2, installez-les comme suit :

sudo pip install virutalenv
sudo pip install virtualenvwrapper

Si vous envisagez d'utiliser python 3, installez les versions correspondantes de python 3

sudo pip3 install virtualenv
sudo pip3 install virtualenvwrapper

Vous avez installé avec succès les paquets pour votre version de python et tout est prêt, n'est-ce pas ? Eh bien, essayez. Type workon dans votre terminal. Votre terminal ne sera pas en mesure de trouver la commande ( workon est une commande de virtualenvwrapper). Bien sûr, il ne le fera pas. Workon est un exécutable qui ne sera disponible que lorsque vous aurez chargé/source le fichier virtualenvwrapper.sh . Mais l'officiel guide d'installation vous a couvert sur ce point, n'est-ce pas ? Ouvrez simplement votre fichier .bash_profile et insérez ce qui suit, comme le dit la documentation :

export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh

En particulier la commande source /usr/local/bin/virtualenvwrapper.sh semble utile puisque la commande semble charger/source le fichier désiré virtualenvwrapper.sh qui contient toutes les commandes avec lesquelles vous voulez travailler comme workon y mkvirtualenv . Mais oui, non. Lorsque vous suivez le guide d'installation officiel, il est très probable que vous receviez l'erreur du message initial : mkvirtualenv: command not found . Vous ne trouvez toujours pas de commande et vous êtes toujours frustré. Quel est donc le problème ? Le problème est que virtualenvwrapper.sh n'est pas là où vous le cherchez en ce moment. Petit rappel ... vous le cherchez ici :

source /usr/local/bin/virtualenvwrapper.sh

Mais il existe un moyen assez simple de trouver le fichier souhaité. Il suffit de taper

which virtualenvwrapper

à votre terminal. Cela va chercher dans votre PATH pour le fichier, car il est très probable qu'il se trouve dans un dossier inclus dans le PATH de votre système.

Si votre système est très exotique, le fichier souhaité se cachera en dehors d'un dossier PATH. Dans ce cas, vous pouvez trouver le chemin vers virtalenvwrapper.sh avec la commande shell find / -name virtualenvwrapper.sh

Votre résultat peut ressembler à ceci : /Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh Félicitations. You have found your missing file! . Maintenant, tout ce que vous avez à faire est de changer une commande dans votre .bash_profile. Il suffit de changer :

source "/usr/local/bin/virtualenvwrapper.sh"

à :

"/Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh"

Félicitations. Virtualenvwrapper fonctionne maintenant sur votre système. Mais vous pouvez faire une chose de plus pour améliorer votre solution. Si vous avez trouvé le fichier virtualenvwrapper.sh avec la commande which virtualenvwrapper.sh vous savez qu'il se trouve à l'intérieur d'un dossier du PATH. Donc, si vous écrivez simplement le nom du fichier, votre système de fichiers supposera que le fichier se trouve dans un dossier PATH. Vous n'avez donc pas besoin d'écrire le chemin complet. Tapez simplement :

source "virtualenvwrapper.sh"

C'est ça. Vous n'êtes plus frustré. Vous avez résolu votre problème. Espérons-le.

3voto

lilith Points 26

Afin d'installer avec succès le virtualenvwrapper sur Ubuntu 18.04.3, vous devez faire ce qui suit :

  1. Installer virtualenv

    sudo apt install virtualenv
  2. Installer virtualenvwrapper

    sudo pip install virtualenv
    sudo pip install virtualenvwrapper
  3. Ajoutez ce qui suit à la fin de la section .bashrc fichier

    export WORKON_HOME=~/virtualenvs
    export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python
    source ~/.local/bin/virtualenvwrapper.sh
  4. Exécuter le .bashrc fichier

    source ~/.bashrc
  5. Créez votre virtualenv

    mkvirtualenv your_virtualenv

3voto

Ouvrez votre fichier bashrc en utilisant

gedit ~/.bashrc

allez au bas du fichier bashrc et copiez ces lignes et collez-les

quel python3(vous donne le chemin de python)

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3

export WORKON_HOME=$HOME/.virtualenvs

which virtualenv (vous donne l'emplacement de virtualenv)

export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv

quel virtualenvwrapper.sh(renvoie l'emplacement de virtualenvwrapper.sh)

source /usr/local/bin/virtualenvwrapper.sh

veuillez copier ces lignes dans le même ordre que celui donné ci-dessus

pour plus d'informations, vous pouvez vous référer à : https://www.freecodecamp.org/news/virtualenv-with-virtualenvwrapper-on-ubuntu-18-04/

Vous pouvez également utiliser :

créer un environnement virtuel :

python3 -m venv <virtual environment name>

virtualenv <virtual environment name>

Pour activer l'environnement virtuel

source <virtual environment name>/bin/activate

Pour désactiver l'environnement virtuel

deactivate

2voto

leastgrebe Points 31

En utilisant Git Bash sur Windows 10 et Python36 pour Windows, j'ai trouvé le fichier virtualenvwrapper.sh à un endroit légèrement différent et l'exécution de ce fichier a résolu le problème.

source virtualenvwrapper.sh 
/c/users/[myUserName]/AppData/Local/Programs/Python36/Scripts

1voto

Sous Windows 7 et Git Bash, cela m'aide :

  1. Créer un ~/.bashrc (dans votre dossier personnel)
  2. Ajouter une ligne export WORKON_HOME=$HOME/.virtualenvs (vous devez créer ce dossier s'il n'existe pas)
  3. Ajouter une ligne source " C:\Program Fichiers (x86) \Python36 -32 \<strkeep>scripts<strkeep>\virtualenvwrapper.sh " (changer le chemin pour votre virtualenvwrapper.sh)

Redémarrer votre commande git bash et mkvirtualenv fonctionnera maintenant parfaitement.

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