使用virtualenv安装某些软件包
因此,我想在今年开始使用virtualenv。我喜欢no-site-packages选项,那很好。但是我想知道如何在每个virtualenv中安装某些软件包。例如,假设我想将django安装到每个virtualenv中......这是可能的,如果是这样,怎么办?扩建是否解决了这个问题?使用virtualenv安装某些软件包
那么它不是这么多的Django,更像Django应用程序......我不介意安装一个版本的Django到每个virtualenv中...我只是想知道,如果有一些中间选项“NO- site-packages'
如果你想在每个virtualenv上安装django,你可以把它安装在site-packages目录中?只是一个想法。
另一个选项(我用过的一个)是在创建虚拟环境后easy_install Django。这很容易编写。您付出的代价是在每个虚拟环境中等待Django安装。
我和托比,虽然:除非有令人信服的理由为什么你必须有Django中的每个虚拟环境的单独副本,你应该考虑在你的主要的Python区域安装它,并允许每个虚拟环境从那里使用它。
我想看看这个项目:
http://www.stereoplex.com/two-voices/fez-djangoskel-django-projects-and-apps-as-eggs
可能是我的回答....
我知道你从哪里来的无站点选项。我想使用pip freeze来生成需求列表,并且不希望在站点包中有太多额外的东西。我还需要使用django的多个版本,因为我有没有升级的旧项目(一些旧的svn checkout(pre1.0),一些1.0以及一些新的svn checkout)。在全球网站包中安装Django并不是真正的选择。
相反,我有一个django文件夹,其中包含发行版和几个不同的svn版本,只是将符号链接到本地站点包中的相应版本。为了便于使用,我链接到与环境相同级别的本地站点包,然后链接到相应的django目录和我需要的任何其他“系统”样式包(通常只是PIL)。所以:
$ virtualenv pyenv
$ ln -s ./pyenv/lib/python2.5/site-packages ./installed
$ ln -s /usr/lib/python2.5/site-packages/PIL ./installed
$ ln -s /opt/django/django1.0svn/trunk/django ./installed
现在以下工作:
$ source pyenv/bin/activate
$ python
> import django
> import PIL
为什么要使用的virtualenv呢? :S – KurzedMetal 2011-06-08 04:18:11