2012-09-14 5 views
12

Mögliche Duplizieren:
Revert the `--no-site-packages` option with virtualenveine virtualenv ändern, so dass in der globalen Website-Pakete installiert Pakete sind

ich eine virtuelle Umgebung erstellt haben die virtualenvwrapper documentation wie folgt verwendet:

$ pip install virtualenvwrapper 
$ export WORKON_HOME=~/Envs 
$ mkdir -p $WORKON_HOME 
$ source /usr/local/bin/virtualenvwrapper.sh 
$ mkvirtualenv env1 

Es funktioniert in den meisten Fällen gut, aber ich habe in ein paar gerannt Django-Probleme, bei denen ich einige globale Pakete außerhalb meiner virtuellen Umgebung installieren muss. Wenn ich diese Pakete installiert habe, wie aktualisiere ich meine virtuelle Umgebung, um diese neuen Pakete einzubinden? Oder muss ich die Umgebung von Grund auf neu erstellen?

Antwort

26

Diese Frage ist ein teilweise Duplikat: Revert the `--no-site-packages` option with virtualenv

Da jedoch diese Frage ausdrücklich erwähnt virtualenvwrapper, die einfachste Lösung, bei der Verwendung von virtualenvwrapper ist einfach seinen toggleglobalsitepackages Befehl verwenden:

$ toggleglobalsitepackages env1 

Alternativ können Sie das virtualenv neu installieren, indem Sie es neu konfigurieren, um auf globale Pakete zugreifen zu können, während kee Ping-Pakete bereits dort mit dem Befehl installiert:

$ mkvirtualenv --system-site-packages env1 

(vielen Dank für die Köpfe @Adaephon oben in Bezug auf toggleglobalsitepackages)

+0

Perfect, genau das, was ich suche. –

+0

Eigentlich muss der * virtualenv * nicht neu installiert werden, da * virtualenvwrapper * auch den Befehl 'toggleglobalsitepackages' enthält (seit April 2011 mit Version 2.7). – Adaephon

Verwandte Themen