首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用默认pip将python包安装到特定的虚拟环境

如何使用默认pip将python包安装到特定的虚拟环境
EN

Stack Overflow用户
提问于 2013-07-03 13:00:51
回答 2查看 666关注 0票数 0

如何使用pip从virtualenv外部安装软件到特定的virtualenv。

例如,如果我有一个virtualenv /home/guest/virtualenv/django-env,那么如何在不执行源代码/home/guest/virtualenv/django-env/bin/activate的情况下通过使用/usr/local/bin/pip中提供的缺省pip将python包安装到/home/guest/virtualenv/django-env/lib/python2.7/site-packages/中

上下文是这样的:我正在使用fabric进行软件的远程安装,而当我使用fabric时,我无法持久化新创建的虚拟环境。因此,为了能够将软件安装到新的虚拟环境中,我必须从虚拟环境之外运行默认的pip (/usr/local/bin/pip

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-03 13:08:47

要使用它,您不一定要使用虚拟环境。只需执行安装在virtualenv:/home/guest/virtualenv/django-env/bin/pip install <package>中的pip即可安装软件包。

您也可以在早期版本的pip中,在与pip -E一起安装的虚拟环境之外的另一个虚拟环境中运行pip,如下所示:

代码语言:javascript
运行
复制
pip -E /home/guest/virtualenv/django-env/

但这确实没有以上两种方法的优势,而且可能会导致错误,因此第一种选择仍然更好。

票数 2
EN

Stack Overflow用户

发布于 2013-07-03 13:44:37

pip 1.1之前,有一个选项-E可以在虚拟环境中安装软件包,而不需要切换,就像你可以做的那样,

代码语言:javascript
运行
复制
pip install -E /path/to/env <package>

但根据changelog,

删除了-E/--环境选项和PIP_RESPECT_VIRTUALENV;这两个选项都使用了失效的venv重启机制,而且这两个机制都没有用,因为每个virtualenv现在都有pip。将pip -E路径/to/venv install Foo替换为virtualenv path/to/venv && path/to/venv/pip install Foo。

因此,如果您在1.1之前使用pip,那么使用全局pip就很幸运了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17440002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档