2013-02-02 6 views
5

Pip erkennen global installierte Pakete ..?! :-(Pip - Anforderung bereits erfüllt?

I virtualenvwrapper voraktivieren Haken benutzt habe PYTHONPATH zu reinigen,

export PYTHONPATH="" 

dann echo $ PYTHONPATH gibt leere Zeichenfolge, aber das half nicht.

Was ist los?

[email protected]:~$ mkvirtualenv test 
New python executable in test/bin/python 
Installing setuptools............done. 
Installing pip...............done. 
virtualenvwrapper.user_scripts creating /home/bentzy/.virtualenvs/test/bin/predeactivate 
virtualenvwrapper.user_scripts creating /home/bentzy/.virtualenvs/test/bin/postdeactivate 
virtualenvwrapper.user_scripts creating /home/bentzy/.virtualenvs/test/bin/preactivate 
virtualenvwrapper.user_scripts creating /home/bentzy/.virtualenvs/test/bin/postactivate 
virtualenvwrapper.user_scripts creating /home/bentzy/.virtualenvs/test/bin/get_env_details 
(test)[email protected]:~$ which pip 
/home/bentzy/.virtualenvs/test/bin/pip 
(test)[email protected]:~$ sudo pip install simplejson 
Requirement already satisfied (use --upgrade to upgrade): simplejson in /usr/lib /python2.7/dist-packages 
Cleaning up... 
(test)[email protected]:~$ echo $PYTHONPATH 

(test)[email protected]:~$ pip --version 
pip 1.2.1 from /home/bentzy/.virtualenvs/test/lib/python2.7/site-packages/pip-1.2.1-py2.7.egg (python 2.7) 
+0

ich nicht virtualenvwrapper verwendet haben, aber mit virtualenv verwende ich die --no-site-packages Option. Kann mkvirtualenv diese Option übergeben? –

+0

Ja - aber das ist nicht das Problem. Ab virtualenv 1.7 sind die --no-site-Pakete zum Standard geworden und veraltet. Ich benutze 1.8.2. Wie auch immer - ich habe das auch versucht und immer noch nicht wie erwartet funktioniert ... – bentzy

+0

Versuchen Sie, 'sys.path' zu drucken und zu sehen, was da ist. – Aman

Antwort

9

Sie verwenden sudo, um simplejson zu installieren, aber wenn Sie sudo verwenden, kann Ihre $PATH geändert werden, und das scheint zu sein das Problem.

Verwenden Sie einfach pip install simplejson (keine sudo enthalten) und es wird wahrscheinlich funktionieren.

Verwenden Sie sudo nur, wenn Sie Ihr gesamtes System beeinflussen möchten.

+0

Genau! Vielen Dank. – bentzy

1

Bereits zufrieden bedeutet, dass Sie "it" bereits installiert haben.

Versuch: pip uninstall simplejson

und dann: pip installieren simplejson

Verwandte Themen