如何在Ubuntu上正确安装多个非软件包Distribute / virtualenv / pip生态系统?
我正在Ubuntu中开发Python应用程序。 我想设置一个Distribute / virtualenv / pip生态系统来独立于任何系统Python包管理我的Python包(我在Synaptic中管理,或者我让系统为我管理它们)。
我可以安装python-setuptools,python-virtualenv和python-pip系统包,并以我的快乐方式,但我也希望能够获得最新/特定版本的Distribute,virtualenv和pip。 这些没有PPA,所以我必须手动安装它们。
最后的复杂情况是,我希望能够为多个版本的Python执行此操作。 也就是说,为python2.6设置一个生态系统,为python设置另一个生态系统,为python3设置另一个生态系统,或者为chrooted 32位Python设置另一个生态系统。
我猜这个过程会是这样的:
- 使用Python X将我自己的Distribute副本安装到我的主文件夹中的某个位置
- 使用indie Distribute,easy_install pip
- 使用indie pip,安装virtualenv
- 使用indie virtualenv,创建虚拟环境
- 激活虚拟环境,安装包
- 重复Python Y,Z和Q.
我在寻找哪些安装/配置选项?
virtualenvwrapper做了你要求的大部分或全部。 它基于此处的流量和stackoverflow非常受欢迎。 自Precise / 12.04起,它已经在Ubuntu中打包。
virtualenvwrapper是Ian Bicking的virtualenv工具的一组扩展。 扩展包括用于创建和删除虚拟环境以及管理开发工作流的包装器,使得一次处理多个项目更容易,而不会在其依赖项中引入冲突。
有关示例,请参阅StackOverflow上的此答案 。 在您的情况下,您似乎正在寻找这个virtualenvwrapper命令: mkvirtualenv --python=PYTHON_EXE
(使用特定的Python可执行文件制作virtualenv)。
最后,我们需要协调一致地审查和更新Python包装并考虑特定于平台的用例,因此您可能需要考虑Python包装用户指南中的后续进展。
- 使用Package Manager安装所需的任何Python版本(python3,python2.6等)
- 从PyPI下载最新版本的virtualenv .tar.gz
- 遵循此系统无关的过程来创建安装了pip和Distribute的虚拟环境。 (链接包含一个特定于Ubuntu的脚本,也可以在其他Linux上运行。)