我如何使用pip在$ HOME文件夹中安装软件包?
可能吗? 安装pip
,在我的$HOME
文件夹中安装python软件包。 (例如,我想安装mercurial
,使用pip
,但在$HOME
里面而不是/usr/local
)
我与一台Mac机器,只是想到这种可能性,而不是“污染”我的/usr/local
,我会使用我的$HOME
。
PEP370就是这个。 只是创build一个˜/.local
并做一个pip install package
足以使这些包只能安装在我的$ HOME文件夹?
虽然你可以使用一个virtualenv
,你不需要。 诀窍是将PEP370 – 用户parameter passing给setup.py
脚本。 随着最新版本的pip
,一种方法是:
pip install --user mercurial
这应该导致在$HOME/.local/bin/hg
中安装hg
脚本,并在$HOME/.local/lib/pythonx.y/site-packages/
中安装hg软件包的其余部分。
请注意,Python 2.6的上述情况是正确的。 Python核心开发人员对于Mac OS X上用于PEP370风格的user
安装的适当目录位置存在一些争议 。 在Python 2.7和3.2中,Mac OS X上的位置从$HOME/.local
更改为$HOME/Library/Python
。 这可能会在未来的版本中发生变化。 但是,现在,在2.7(和3.2,如果hg
在Python 3上支持),上述位置将是$HOME/Library/Python/xy/bin/hg
和$HOME/Library/Python/xy/lib/python/site-packages
。
我会在你的HOME目录下使用virtualenv。
$ sudo easy_install -U virtualenv $ cd ~ $ virtualenv . $ bin/pip ...
然后你可以改变~/.(login|profile|bash_profile)
,无论哪一个是正确的,以便将〜/ bin添加到你的PATH中,然后默认使用pip|python|easy_install
。