The scenario is: I am on Ubuntu 11 which comes with Python 2.7, I want to run Mozilla JetPack which supports Python 2.5/2.6 and Google App Engine which only supports Python 2.5
Outline:
/usr/local/python25/bin
sh setuptools-0.6c11-py2.5.egg
).easy_install pip
).virtualenv
and virtualenvwrapper
using pip (pip install v...
etc.).export WORKON_HOME = $HOME/.virtualenvs
). You can use any other directory you want (not just $HOME/.virtualenvs). Just make sure to use the full path.mkvirtualenv foobar
).workon foobar
).pip install blah
Why did your install not work?
Looks like you did not install virtualenv for Python2.5. Hence this will not work.
jiewmeng@JM:/usr/local/python25/bin$ ./python virtualenv /works/tmp/test
You can check by running ls
command in that directory. I suspect you won't find virtualenv
file there.
However this worked for you.
jiewmeng@JM:/usr/local/python25/bin$ virtualenv /works/tmp/test
Because it is using the virtualenv
file for system default Python2.7. You can check which virtualenv
and opening the virtualenv
script. You'll see that the #! will point to system default python.
So you need to install the easy_install and pip for Python 2.5 before you can create virtualenv for Python 2.5. Just follow the steps outlined above.
You don't need to do anything fancy outside the virtualenv wrapper. Just use the --python=python2.5
flag (check out the man page for virtualenv form more). It does not matter what version you install it with, you just have to select the right executable for python in the virtual environment.
e.g. mkvirtualenv --python=python2.5 --distribute python25
if the python flag fails, either add a symlink (ln -s
) to python25 in your $PATH or use the full path name on the python flag.
Also, default for multiple python installations is to have, for all 'altinstall' versions, a separate python and easy_install. So, for example: python2.5
,easy_install-2.5
,python2.6
, easy_install-2.6
etc.