J'essaye d'installer virtualenv et/ou virtualenvwrapper sur un mac osx 10.8.3
Je me bats avec du python depuis deux jours. Enfin, j'ai pu installer Python 2.7.4 en utilisant brew. Auparavant, j'avais virtualenv installé avec easy_install. Ensuite, j'ai essayé de le désinstaller, en essayant de placer mon ordinateur dans la même situation que celle de mes collègues. Peut-être que je l'ai désinstallé avec succès, peut-être pas. Je ne sais pas comment le tester. Maintenant je suis supposé installer virtualenv en utilisant -
pip install virtualenv
Mais ça me donne
Could not find an activated virtualenv (required).
pip install virtualenvwrapper
donne exactement le même résultat.
De plus, la variable: PIP_RESPECT_VIRTUALENV
est null:
echo $PIP_RESPECT_VIRTUALENV
Comment puis-je résoudre ce problème?
Merci
Ouvrez votre fichier ~/.bashrc
et voyez si cette ligne est là -
export PIP_REQUIRE_VIRTUALENV=true
Cela pourrait causer le problème. S'il y en a un, changez le en false
et lancez -
source ~/.bashrc
Sinon, lancez export PIP_REQUIRE_VIRTUALENV=false
à partir du terminal.
@Bibhas l'a; +1 pour rechercher export PIP_REQUIRE_VIRTUALENV=true
dans ~/.profile
ou ~/.bashrc
. Vous pouvez confirmer le réglage dans votre Shell actuel avec env |grep PIP_REQUIRE_VIRTUALENV
.
Ce paramètre est un bon contrôle de sécurité; le plus souvent, vous voudrez installer des éléments dans virtualenvs. Cependant, vous do voulez parfois travailler avec le python global/system. Dans ces cas, regardez --isolated :
Exécutez pip en mode isolé, en ignorant les variables d'environnement et la configuration de l'utilisateur.
$ pip install --upgrade pip
Could not find an activated virtualenv (required).
$ pip install --upgrade pip --isolated
Requirement already up-to-date: pip in /usr/local/lib/python2.7/site-packages
$ pip freeze --isolated
...
Une solution supplémentaire à celles déjà présentées consiste à ajouter une commande Shell qui vous permettra d'installer des packages py en remplaçant temporairement le paramètre par défaut. Ajoutez-le à votre ~/.profile
, ~/.bashrc
ou à l'endroit où vous conservez les exportations/paramètres de votre shell (dans mon cas, ~/.zshrc
).
syspip(){
PIP_REQUIRE_VIRTUALENV="" pip "$@"
}
Avec ce simple ajout, vous pouvez installer des packages pip sur le système via syspip install <package>
.
Vérifiez le contenu de ~/.pip/pip.conf comme suit:
[global]
index=https://pypi.python.org/simple/
require-virtualenv=false
si précédent, il était défini comme require-virtualenv = true
Un autre endroit où vous pouvez éventuellement avoir ce "verrou" est le fichier pip.conf
. Dans mon cas, j'en avais un dans mon dossier ~/Library/Application Support/pip
et je l'avais oublié.
Le contenu typique du fichier pourrait être:
[install]
require-virtualenv = true
[uninstall]
require-virtualenv = true
Semblable à d’autres réponses, false
devrait être remplacé par true
dans le fichier.