2015-11-20 6 views
5

Mac OSには、それ自体のPythonプリインストールが付属しています。複数のpythonインストールとpip、dude、私のサイトパッケージはどこですか?

これだけを残して、homebrewを使って新しいPythonをシステムにインストールすることが推奨されます。

私の問題は、homebrewを使用してPython(およびpip)をインストールした後で、pipが自分のものではなくMac OSのサイトパッケージにパッケージをインストールしていることです。

$ which pip 
/usr/local/bin/pip 

しかし、その後、私はSEの私ができる何かをインストールピップ時にそれがでインストールされます:私は、私は「自作」ピップを実行しています確認している

/lib/python2.7/site-packages 

i「がない限り、ピップが/usr/local/lib/python2.7/site-packagesでインストールする必要があります何かを理解できない。

pip -V 
pip 7.1.0 from /usr/local/lib/python2.7/site-packages (python 2.7) 

がちょうどたぶんそれによってインストールされているが間違っているのsite-packagesに行ってきましたパッケージは表示されませんpip installを実行した後pip listの実行:

驚くべき事は-Vでチェックすることが驚くべき結果が得られることです。

これに加えて、/lib/python2.7/site-packagesにインストールされたパッケージは、$ PYTHONPATHによって認識されないため、使用できません。

私はvirtualenvを使用することにしましたが、virtualenvをアクティブにしてpipを使用しても、virtualenv site-packagesの代わりに/lib/python2.7/site-packagesにインストールしていると驚きました。

なんとか私は自家製のピルで終わりました。自家製のピルは自家製のサイトパッケージの外にパッケージをインストールし、pythonのインタプリタはpipでインストールされたパッケージを使用できません。

どうすれば根本的な原因を突き止め、円滑なパイソン体験をすることをおすすめしますか? :)

+0

あなたはあなたでしたか? venv/bin/activate'あなたのvitualenv? – Ray

答えて

0

私はvirtualenvを有効にした後、あなたのpythonパスがその環境のサイトパッケージの場所を指すべきだと思います。もしそうでなければ、おそらくアクティブにならないでしょう。一度起動するとpipを実行して、その仮想envのサイトパッケージにインストールされます。

  • ステップ1:それが活性化されていないなら、それはそれはすでに知っているものは何でも他のサイトのパッケージになります仮想ENVを作成
    • ア・ラ... virtualenv venv
    • は一度だけこれを行います!
  • ステップ2:それらを見て、ピップのコマンドを実行します。あなたはこの仮想環境に
  • ステップ3を使用するたびにやってvitual ENVを有効に
    • 何か
    • source /venv/bin/activateようなニーズ仮想env site-packagesにインストールしてください!

    あなたがステップ2の前にステップ3を実行すると、実際にその全てのベットがオフになっている、あなたが作成した仮想環境を使用していないあなた - それはおそらくピップは依然として古い場所に設置される理由です。

    ここで私の全体的な推奨はさらに進んでpyenvを使用して、特定のバージョンのPythonを/Users/username/.pyenv folderにインストールし、デフォルトのOSXと自作の両方のパッケージを破棄します。簡単ですし、バージョンを変更するコマンドを簡単に発行することで、使用するPythonの正確なバージョンを簡単に制御できます。

    THEN使用python2ではvirtualenvかのpython3でピップモジュールを格納するために独自のローカルサイトのパッケージでvitual環境を構築するために(pyenvと混同すべきでない)場合pyvenv。 virtualenvをアクティブにすると、$ PYTHONPATHが特定の場所に切り替わります。

    流れは次のようになります。プルダウンし、使用するのpythonの特定のバージョンに切り替える

    • 使用pyenv - オーバーライド自作とOSX版。
    • あなたのvitrualenvを作成してください。これにより、前の手順で指定したPyenv Pythonスタックにリンクするビンが作成されます。
    • 仮想envを有効にして、処理を続行します。

    環境を完全に制御してください。

  • 関連する問題