场景是:我在使用Python 2.7的Ubuntu 11上,我想运行支持Python 2.5 / 2.6的Mozilla JetPack和仅支持Python 2.5的Google App Engine。
请注意,删除Python 2.7并不是一个好主意,因为Ubuntu可能正在使用它。所以正确的方法是使用virtualenv
。但是我完全迷失了它。我在 this guide
/usr/local/python25
中安装了Python 2.5
我试过
jiewmeng@JM:/usr/local/python25/bin$ ./python --version
Python 2.5.5
jiewmeng@JM:/usr/local/python25/bin$ ./python virtualenv /works/tmp/test
./python: can't open file 'virtualenv': [Errno 2] No such file or directory
然后下面的工作,但我将使用Python 2.7
jiewmeng@JM:/usr/local/python25/bin$ virtualenv /works/tmp/test
New python executable in /works/tmp/test/bin/python
Installing distribute.................................................................................................................................................................................done.
jiewmeng@JM:/usr/local/python25/bin$ cd /works/tmp/test/bin
jiewmeng@JM:/works/tmp/test/bin$ ls
activate activate_this.py easy_install easy_install-2.7 pip python
jiewmeng@JM:/works/tmp/test/bin$ ./python --version
Python 2.7.1+
此外,如何使用此版本的Python运行Mozilla JetPack或Google App Engine?对不起,我是Python(和Linux / Ubuntu)的新手
答案 0 :(得分:15)
<强>概要强>
/usr/local/python25/bin
sh setuptools-0.6c11-py2.5.egg
)。easy_install pip
)。virtualenv
等)安装virtualenvwrapper
和pip install v...
。export WORKON_HOME = $HOME/.virtualenvs
)。您可以使用您想要的任何其他目录(不仅仅是$ HOME / .virtualenvs)。只需确保使用完整路径。mkvirtualenv foobar
)。workon foobar
)。pip install blah
为什么您的安装不起作用?
看起来你没有为Python2.5安装virtualenv。因此,这不起作用。
jiewmeng@JM:/usr/local/python25/bin$ ./python virtualenv /works/tmp/test
您可以在该目录中运行ls
命令进行检查。我怀疑你不会在那里找到virtualenv
文件。
然而这对你有用。
jiewmeng@JM:/usr/local/python25/bin$ virtualenv /works/tmp/test
因为它使用virtualenv
文件作为系统默认的Python2.7。您可以查看which virtualenv
并打开virtualenv
脚本。你会看到#!将指向系统默认的python。
因此,在为Python 2.5创建virtualenv之前,需要为Python 2.5安装easy_install和pip。只需按照上述步骤操作即可。
答案 1 :(得分:2)
你不需要在virtualenv包装器之外做任何事情。只需使用--python=python2.5
标志(查看virtualenv表单的手册页)。你安装它的版本并不重要,你只需要在虚拟环境中为python选择正确的可执行文件。
e.g。 mkvirtualenv --python=python2.5 --distribute python25
如果python标志失败,可以在$ PATH中为python25添加符号链接(ln -s
),或者在python标志上使用完整路径名。
此外,对于所有&#39; altinstall&#39;版本,单独的python和easy_install。例如:python2.5
,easy_install-2.5
,python2.6
,easy_install-2.6
等。