15 python pip package easy-install pythonpath
我正在尝试使用pip在本地安装软件包.它曾经使用--user
但现在当我尝试它时,它找到包的版本,/usr/local/lib/
然后不在本地安装它.通常情况下,将安装在的东西~/.local
,但现在它只是检查包装上的系统级目录,如果它的存在,它不安装它(这是不是我想要的),如果它不存在,它会尝试安装它在/usr/local/lib
其中我没有写权限.例如:
$ pip install --user rpy2
Requirement already satisfied (use --upgrade to upgrade): rpy2 in /usr/local/lib/python2.7/dist-packages/
Run Code Online (Sandbox Code Playgroud)
如何使pip install --user
总是转到~/.local
而不是系统范围的目录?
Pio*_*ost 16
引用 Marcus Smith(pip的维护者):
如果您认为全球网站已过期,并且想要在用户网站中使用最新网站,请使用:
pip install --upgrade --user SomePackage
如果全局站点是最新的,并且你真的只想要重复相同的东西
--user
,那么使用:(
pip install --ignore-installed --user SomePackage
现在在#1352合并之后正常工作,这将在v1.5中发布)
如何使pip install --user
总是转到~/.local
而不是系统范围的目录?
使用both --upgrade
和--ignore-installed
参数.
根据 pip 文档,该语法是正确的,但需要 Python 2.6。
\n\n\n\n\n用户安装
\n\nPython 2.6 附带了 \xe2\x80\x9cuser 方案\xe2\x80\x9d 安装,这意味着\n 所有 Python 发行版都支持特定于用户的替代安装位置\n。每个操作系统的默认位置\n 在 site.USER_BASE 变量的 python 文档中进行了解释。\n 可以通过为 pip install 指定 \xe2\x80\x93user\n 选项来打开此安装模式。
\n\n此外,可以通过设置 PYTHONUSERBASE 环境变量来自定义 \xe2\x80\x9cuser 方案\xe2\x80\x9d,该变量会更新 site.USER_BASE 的值。
\n\n要将 \xe2\x80\x9cSomePackage\xe2\x80\x9d 安装到 site.USER_BASE\n 自定义为 \xe2\x80\x98/myappenv\xe2\x80\x99 的环境中,请执行以下操作:
\n
export PYTHONUSERBASE=/myappenv \npip install --user SomePackage\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n因此以下条目应该适合您:
export PYTHONUSERBASE=~/.local\npip install --user rpy2\n
Run Code Online (Sandbox Code Playgroud)\n