问题:将pip软件包安装到$ HOME文件夹
可能吗?安装时pip
,将python软件包安装在我的$HOME
文件夹中。(例如,我想使用安装,但mercurial
使用而不是)pip
$HOME
/usr/local
我在Mac机器上,只是考虑了这种可能性,而不是“污染”我的/usr/local
,$HOME
而是使用我的。
PEP370正是与此有关。只是创建一个˜/.local
并pip install package
足以将这些软件包安装在我的$ HOME文件夹中?
回答 0
虽然您可以使用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。一直有一些争议的关于什么是PEP370风格的Mac OS X上的相应目录位置Python的核心开发者user
安装。在Python 2.7和3.2中,Mac OS X上的位置从更改$HOME/.local
为$HOME/Library/Python
。这可能会在将来的版本中更改。但是,目前,在2.7(和3.2,如果hg
Python 3支持的话)上,上述位置将是$HOME/Library/Python/x.y/bin/hg
和$HOME/Library/Python/x.y/lib/python/site-packages
。
回答 1
我会在您的HOME目录中使用virtualenv。
$ sudo easy_install -U virtualenv
$ cd ~
$ virtualenv .
$ bin/pip ...
然后~/.(login|profile|bash_profile)
,您还可以更改,无论哪种方式都适合您的shell将〜/ bin添加到您的PATH中,然后pip|python|easy_install
默认情况下使用。
回答 2
您可以指定-t
选项(--target
)来指定目标目录。请参阅pip install --help
以获取详细信息。这是您需要的命令:
pip install -t path_to_your_home package-name
例如,要在我的$HOME
目录中安装说“ mxnet”,请输入:
pip install -t /home/foivos/ mxnet