2012-05-16 9 views
9

私はvirtualenvを使用してPythonプロジェクトのための独立した環境を作成します。それから、pip - Pythonパッケージマネージャーとの依存関係をインストールします。時々私はsource venv/bin/activateを忘れてしまい、pipは私のプロジェクトの中にbuild/というディレクトリを作成します。なぜピップはそれらを作成するのですか?削除してもらえない場合は、.hgignoreファイルに入れてもいいですか?Pipはビルド/ディレクトリを作成します

私の知る限り、pipはpip-delete-this-directory.txtというファイルにダウンロードされたパッケージのソースを保存しています。しかし、私がそれを削除すると、実際のコードがvenv/lib/python2.7/site-packages/に入れられているので、すべてがまだ動作します。それではbuild/は本当ですか?

答えて

25

buildディレクトリは、パッケージが展開されてビルドされるディレクトリです。パッケージが正常にインストールされると、pip-delete-this-directory.txtを削除していない限り、pipは解凍されたディレクトリをbuildから削除します。 pip-delete-this-directory.txtで説明したように:ランタイム環境のための

This file is placed here by pip to indicate the source was put 
here by pip. 

Once this package is successfully installed this source code will be 
deleted (unless you remove this file). 

は、このようにその重要度の低いです。あなたはそれを無視することができます。

また、あなたが/tmp

さらに例えば、buildベースディレクトリとして別のディレクトリを指定するpip install -b customized_build_directoryを使用することができ、あなたがpip install --no-download package_name wのパッケージを再構築することができ、パッケージの以前のインストールが失敗した場合、それをダウンロードするO /。

+2

私が必要としていた '--no-download'のおかげで、ありがとうございました。 –

+1

なぜ、pip-delete-this-directory.txtを削除しなかった場合でも、ビルドディレクトリを作成できますか?それは私が設定を解除することはできますか? – Alex

+0

@Alexディレクトリを '/ tmp'のような別の一時的な場所に向けるのもいいですが、それはどういう意味ですか? – okm

1

-bオプションは、何らかの理由でビルドが失敗したときに私にとってはうまくいかないようです。なぜならVisual Studioのみが今すぐ修正できることです。私は_sodium.cが必要で、悲しいことにピップも必要なときに削除します。そのファイルのコピー

+1

これは本当にコメントであり、**元の質問に対する答えではありません**。投稿者のコメントを批評したり要請したりするには、自分の投稿の下にコメントを残してください。自分の投稿に常にコメントすることができます。そして、十分な[評判](https://stackoverflow.com/help/whats-reputation) [任意の投稿にコメントする]ことができます(https://stackoverflow.com/help/privileges/comment)。 [なぜコメントするには50の評判が必要ですか?代わりに何をすることができますか?](https://meta.stackexchange.com/a/214174) – DavidPostill