Pip创建构建/目录

时间:2012-05-16 11:04:16

标签: python virtualenv pip

我使用virtualenv为我的Python项目创建隔离的环境。然后我用pip安装依赖 - Python包管理器。有时我忘了做source venv/bin/activate,然后在我的项目中创建build/目录。为什么pip会创建它们?我可以删除它们,如果没有,我可以将它们放在我的.hgignore文件中吗?

据我所知,pip在一个名为pip-delete-this-directory.txt的文件中存储了下载包的来源。但当我删除它时,一切仍然有效,因为真正的代码被放入venv/lib/python2.7/site-packages/。那么build/到底是什么意思?

2 个答案:

答案 0 :(得分:26)

build目录是将包解压缩到其中并从中构建的目录。成功安装软件包后,pip将从build中删除解压缩的目录,除非您已删除pip-delete-this-directory.txt。如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).

因此它对运行时环境不那么重要。你可以安全地忽略它。

此外,您可以使用pip install -b customized_build_directory将另一个目录指定为build基目录,例如/tmp

此外,如果先前安装的软件包失败,您可以pip install --no-download package_name重建软件包而无需下载软件包。

答案 1 :(得分:0)

{p> -b选项对我来说似乎不适用于构建失败的情况,因为只有Visual Studio现在才能解决这个问题我需要_sodium.c而且当我不想要它时,很遗憾pip删除它因为我需要该文件的副本。