私の家では、lib/python2.7
という名前のディレクトリがあります(実際には、Pythonのバージョンによって、そのようなディレクトリが5つあります)。これは共有ホスティング(Webfaction)なので、そのディレクトリは私にとって基本的なものです。そこには、virtualenv
とvirtualenvwrapper
がインストールされています。共有ホスティングの顧客として、私はsudo
へのアクセス権がなく、グローバルパッケージをインストールしています。しかし私のvirtualenvのピップリストパッケージは、私のlib/python2.7ディレクトリにありますか?
、私はvirtualenvの作成時に:
$ mkvirtualenv myenvironment
$ workon myenvironment
$ which pip
# outputs the myenvironment's path to pip
$ pip freeze
コマンドは、下の全パッケージの一覧を表示する私のlib/python2.7
(これが原因に...レガシー私が持っている同じvirtualenvのパッケージ、および競合のパッケージが含まれて...理由)。これは、パッケージの名前であるパッケージをlib/python2.7
にインストールしたいのであれば、私には気になりません。
右workon
環境内で、私はPYTHONPATHは奇妙なものを持っているかどうかをチェックしてみてください、それが空である:私はすべての仮想環境の外にそのコマンドをしようとした場合
$ echo $PYTHONPATH
# shows a blank line
また空です。
--no-site-packages
がデフォルトであるようだが、問題のほんの一部を解決します。これはつまり、pip freeze | wc -l
は、ある環境では、どの環境からでもグローバルに実行した場合よりも低い値を表示します。これは、既に提供されているパッケージが除外されており、ホスティング自体からですまた、ホスティングはと共有されており、グローバルスペースにアクセスすることはできません)。
私の質問は次のとおりです。これをどのように解決できますか?私はvirtualenvのは$HOME/lib/python2.7
でパッケージを一覧表示しませ欲しいthis questionにデュープ-リンクを避けてください、何もあり便利だったとまだ受け入れ答えを持っていません。私はその質問に