これはどこかが壊れた状態のようです。
まず、virtualenv 内で、pip freeze
ipython がインストールされていることを報告します
% workon myvenv
(myvenv)% pip freeze | grep ipython
ipython==0.12.1
...しかし、ipython
virtualenv 内から見たものは、virtualenvの下にインストールされたものではありません。
(myvenv)% which ipython
/usr/bin/ipython
実際、virtualenv の下にインストールされた ipython のコピーを「アンインストール」しようとすると、pip はそれを拒否します。
(myvenv)% pip uninstall ipython
Not uninstalling ipython at /usr/lib/python2.7/dist-packages, outside environment /home/yt/.virtualenvs/myvenv
また、新しいコピーのインストールも拒否します。
(myvenv)% pip install ipython
Requirement already satisfied (use --upgrade to upgrade): ipython in /usr/lib/python2.7/dist-packages
Cleaning up...
ところで、のコピーpip
とpython
virtualenv 内で見られるものは
(myvenv)% which pip
/home/yt/.virtualenvs/myvenv/bin/pip
(myvenv)% which python
/home/yt/.virtualenvs/myvenv/bin/python
明らかに、いくつかの状態がここで破損しています。どの状態かを突き止めたいと思います。私が主に興味を持っているのは、何が間違っているかを理解することであり、次にそれを修正することにのみ関心があることを強調します。IOW、私は問題のトラブルシューティングに興味があり、やみくもに試行錯誤して問題を「修正」することに興味はありません。私の経験では、このような盲目的な混乱によって生み出された「修正」は明らかであり、実際には根底にあるもつれを悪化させるだけであることがよくあります.
私の当面の質問は次のとおりです。
- なぜvirtualenvがアクティブなのに
pip
見ているのですか?/usr/lib/python2.7/dist-packages
- virtualenvの下に何もないのに、なぜ が
pip freeze
表示されるのですか?ipython==0.12.1
ipython