有可能吗?安装时pip
,在我的 $HOME
文件夹中安装 python 包。 (例如,我想安装 mercurial
,使用 pip
,但在 $HOME
内部而不是 /usr/local
)
我使用的是 mac 机器,只是想到了这种可能性,而不是“污染”我的 /usr/local
,而是使用我的 $HOME
。
PEP370正是关于这一 pip 。只是创建一个 ~/.local
并执行一个 pip install package
足以使这些包仅安装在我的 $HOME 文件夹中吗?
最佳答案
虽然您可以使用 virtualenv
,但您不需要这样做。诀窍是将 PEP370 --user
参数传递给 setup.py
脚本。使用最新版本的 pip
,一种方法是:
pip install --user mercurial
这应该会导致 hg
脚本安装在 $HOME/.local/bin/hg
中,而 hg 包的其余部分安装在 $HOME/中.local/lib/pythonx.y/site-packages/
.
请注意,以上内容适用于 Python 2.6。有一个bit of controversy Python 核心开发人员之间关于在 Mac OS X 上用于 PEP370 样式 user
安装的适当目录位置。在 Python 2.7 和 3.2 中,Mac OS X 上的位置从 $HOME/.local
更改为 $HOME/Library/Python
。这可能会在未来的版本中改变。但是,目前,在 2.7(和 3.2,如果 Python 3 支持 hg
),上述位置将是 $HOME/Library/Python/x.y/bin/hg
和 $HOME/Library/Python/x.y/lib/python/site-packages
.
关于python - 将 pip 包安装到 $HOME 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7143077/