On Ubuntu, how do you install a newer version of python and keep the older python version?

Trevor Boyd Smith picture Trevor Boyd Smith · Jun 16, 2010 · Viewed 10.8k times · Source

Background:

  • I am using Ubuntu
  • The newer python version is not in the apt-get repository (or synaptic)
  • I plan on keeping the old version as the default python when you call "python" from the command line
  • I plan on calling the new python using pythonX.X (X.X is the new version).

Given the background, how do you install a newer version of python and keep the older python version?


I have downloaded from python.org the "install from source" *.tgz package. The readme is pretty simple and says "execute three commands: ./configure; make; make test; sudo make install;"

If I do the above commands, will the installation overwrite the old version of python I have (I definitely need the old version)?

Answer

Alex Martelli picture Alex Martelli · Jun 16, 2010

When you install from source, by default, the installation goes in /usr/local -- the executable in particular becomes /usr/local/bin/pythonX.Y with a symlink to it that's named /usr/local/python. Ubuntu's own installation is in /usr/ (e.g., /usr/bin/python), so the new installation won't overwrite it. Take care that the PATH environment variable doesn't have /usr/local/bin before /usr/bin, or else simple mentions of python would execute the new one, not the old one.