Cela me rend fou ces 2 derniers jours . J'ai installé virtualenv sur mon Macbook en utilisant pip install virtualenv
. Mais lorsque j'essaie de créer un nouveau virtualenv en utilisant virtualenv venv
, erreur de dire "virtualenv: commande introuvable".
J'ai utilisé pip show virtualenv
et l'emplacement de l'installation est "Emplacement: /usr/local/lib/python2.7/site-packages" mais je ne peux pas savoir où se trouve l'exécutable. J'ai essayé des dizaines d'autres publications similaires mais ces solutions ne fonctionnent pas pour moi.
Des idées ce qui pourrait mal tourner ici?
La seule approche réalisable que j'ai pu comprendre (avec l'aide de @Gator_Python était de faire python -m virtualenv venv
. Cela crée l'environnement virtuel et fonctionne comme prévu.
J'ai personnalisé python installé et c'est peut-être pourquoi l'approche par défaut ne fonctionne pas pour moi.
Comme mentionné dans les commentaires, le module virtualenv est correctement installé dans l'environnement attendu puisque python -m venv
vous permet de créer virtualenv.
Le fait que virtualenv
ne soit pas une commande reconnue résulte du fait que virtualenv.py
n'est pas dans votre PATH système et/ou n'est pas exécutable. La cause principale pourrait être des distutils ou des setuptools obsolètes.
Vous devez essayer de localiser le fichier virtualenv.py
, vous assurer qu'il est exécutable (chmod +x
) et que son emplacement est dans votre système PATH. Sur mon système, virtualenv.py
se trouve dans le dossier ../Pythonx.x/Scripts
, mais cela peut être différent pour vous.
Sur macOS Mojave
Première vérification que python est dans le chemin.python --version
Le deuxième point de contrôle est installé.pip --version
S'il n'est pas installé.brew install pip
Troisième installation virtualenvSudo -H pip install virtualenv
Se pourrait-il que vous utilisiez le gestionnaire de paquets Anaconda? Si tel est le cas, il possède son propre système d’environnement virtuel que vous configurez comme suit:
conda create --name venv
J'ai eu le même problème (bien que sur Ubuntu), une solution simple est au lieu de faire pip install virtualenv
, vous précédez la recommandation avec "Sudo".
Une petite inspection révèle la raison de ce correctif:
pip install virtualenv
essaye de placer un exécutable sous /usr/local/bin
pour qu'il puisse être appelé à partir de la ligne de commande, mais cela a échoué car seule la racine a le droit d'écriture sur ce répertoire.
une alternative est pip install --user virtualenv
, voici quelques lectures supplémentaires 1 , 2