1. ホーム
  2. virtualenv

[解決済み] pip - 要件を既に満たしているか?

2022-02-09 15:53:20

質問

pip がグローバルにインストールされたパッケージを認識しない......!? :-(

virtualenvwrapperのpreactivateフックでPYTHONPATHを掃除しています。

export PYTHONPATH="" 

を実行すると echo $PYTHONPATH が空文字列を返すが、これは役に立たなかった。

どうしたんですか?

bentzy@lama:~$ 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)bentzy@lama:~$ which pip
/home/bentzy/.virtualenvs/test/bin/pip
(test)bentzy@lama:~$ sudo pip install simplejson
Requirement already satisfied (use --upgrade to upgrade): simplejson in /usr/lib    /python2.7/dist-packages
Cleaning up...
(test)bentzy@lama:~$ echo $PYTHONPATH

(test)bentzy@lama:~$ 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)

解決方法は?

を使用しています。 sudo を使ってsimplejsonをインストールすることができますが、もし sudo あなたの $PATH が変更されている可能性があり、それが問題のようです。

ただ pip install simplejson (いいえ sudo が含まれている)、おそらくうまくいくでしょう。

使用方法 sudo は、システム全体に影響を与えたいときだけにしてください。