Installing Python 2.4 on Linux

Edward Diener eldiener_no_spam_here at earthlink.net
Tue Apr 5 22:33:28 EDT 2005


Marcin Stêpnicki wrote:
> Dnia Tue, 05 Apr 2005 21:21:37 +0000, Edward Diener napisal(a):
>
>> I can install Python 2.4 on the Fedora 3 Linux system, but after I
>> do a number of Linux utilities and commands, like yum, stop working
>> because they were dependent on the Python 2.3 installation. What
>> happens is that Python 2.4 replaces the /usr/bin/python module with
>> the Python 2.4 version. If I replace /usr/bin/python with the Python
>> 2.3 version executable, which is still on my system, that all the
>> aforesaid modules depend on, they start working again, but I can no
>> longer execute modules, like IDLE, which was part of my Python 2.4
>> distribution.
>>
>> What is the solution to this ? The operating system was installed
>> with Python 2.3 and the development libraries but no tools, doc, or
>> otherwise. I have installed Python 2.4 with all the RPMs and copied
>> down the Python 2.4 documentation to my machine ( since
>> python24-docs.rpm gives one very little ). I would naturally like to
>> use Python 2.4 without killing all the commands that depend on
>> Python 2.3. No doubt these commands have their modules in the site
>> libraries for Python 2.3. Of course I would love to update these
>> dependencies to use Python 2.4 but newer RPMs for these commands do
>> not exist.
>>
>> I do not know whether this is a Python problem or a Fedora 3 problem
>> but I thought I would ask here first and see if anybody else had the
>> same problem. I imagine the problem might exist on other Linux
>> systems.
>
> It's rather Fedora related, I have Python 2.2, 2.3 and 2.4 on my
> Ubuntu box and they seem to coexist without problems.
>
> If you can afford breaking package dependencies a bit, save a copy of
> python2.3 binary somewhere and recreate it after installing Python
> 2.4

After I installed Python 2.4, the Python 2.3 executable still existed on the
system. So the only difference which occurred is that the Python 2.4
installation copied to the /usr/bin/python executable the /usr/bin/python2.4
executable ( it would seem more understandable that /usr/bin/python be a
link instead ). So there is really no need to recreate it. Essentially the
two versions co-exist on the system but only one can be /usr/bin/python and
therefore executed when a Python script is is used as a command.

>, OR make a symbolic link /usr/bin/python to /usr/bin/python2.3
> and use /usr/bin/python2.4 explicitely when you want to use the newer
> version.

Yes, this is the right solution. I am so used to just executing a Python
script that I forgot that I could just say 'python2.4 ascript.py'.

> You may also try to link modules from
> /usr/lib/python2.3/site-packages to /usr/lib/python2.4/site-packages
> (all or just few of them) - most should be upwards compatible.

By link do you simply mean moving the unique modules in the site packages
from the python2.3 directory to the python2.4 site-packages directory, or is
there something else I must do to see if they work ?

> It may
> make Fedora utilities work again (you haven't provided error
> messages, so it's hard to tell) even with Python 2.4.

The errors when executed from the command line, when python2.4 is python,
involved not being able to find modules, no doubt because they were not in
the python2.4 site-packages subdirectory. When python2.3 is python, the
modules are found and everything works. Maybe it is just a matter of moving
of copying these modules on over and seeing if that fixes things. Do
site-packages have to "register" themselves in any way during setup ? I do
not think so, but I may be wrong.





More information about the Python-list mailing list