From: david on
You learn something new every day:

On my ubuntu, update-manager is supposed to use the python2.5
installed on /usr/bin. Well, I had subsequently installed a whole
bunch of stuff in /usr/local (/usr/local/bin/python and /usr/local/lib/
python2.5 etc), which I have happily been using for development for a
year. I had thought that the two pythons were completely independent.

Well, I was wrong. When /usr/bin/python2.5 runs, *by default*, it
adds /usr/local/lib/python2.5 to its sys path - and apparently there
are things in /usr/local which are inconsistent with those at /usr
(not suprising).

I have fixed the problem - but I had to modify the actual update-
manager .py file itself. At the beginning, I set the sys.path in
python *explicitly* to not include the /usr/local stuff.

But this is clearly a kludge. My question: how do I keep the Ubuntu
python stuff at /usr/bin/python2.5 from adding /usr/local/lib/
python2.5 to the import search path in a clean and global way? I
really want both pythons completely isolated from one another!

Thankyou.
From: casevh on
On Jul 5, 11:09 am, david <dgel...(a)gmail.com> wrote:
> You learn something new every day:
>
> On my ubuntu, update-manager is supposed to use the python2.5
> installed on /usr/bin. Well, I had subsequently installed a whole
> bunch of stuff in /usr/local (/usr/local/bin/python and /usr/local/lib/
> python2.5 etc), which I have happily been using for development for a
> year. I had thought that the two pythons were completely independent.
>
> Well, I was wrong. When /usr/bin/python2.5 runs, *by default*, it
> adds /usr/local/lib/python2.5 to its sys path - and apparently there
> are things in /usr/local which are inconsistent with those at /usr
> (not suprising).
>
> I have fixed the problem - but I had to modify the actual update-
> manager .py file itself. At the beginning, I set the sys.path in
> python *explicitly* to not include the /usr/local stuff.
>
> But this is clearly a kludge. My question: how do I keep the Ubuntu
> python stuff at /usr/bin/python2.5 from adding /usr/local/lib/
> python2.5 to the import search path in a clean and global way? I
> really want both pythons completely isolated from one another!
>
> Thankyou.

Python's path is build by site.py. In the file /usr/lib/python2.5/
site.py, look for the line "prefixes.insert(0, '/usr/local')" and
comment it out. That should do it.

casevh
From: catalinfest on
Is some problems with 2.5 i see something on internet (ex: ctypes )
So i try to install 2.5.1 for pyglet1.1, but not work with ctypes .
So ctypes lib is on the path lib's !?
But python2.6 work with ctypes.
The python2.5 and 2.6 have been installed with same command:
python setup.py install
If you see my code :

python2.5
Python 2.5.1 (r251:54863, Jul 4 2008, 14:55:17)
[GCC 4.3.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ctypes
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.5/ctypes/__init__.py", line 10, in
<module>
from _ctypes import Union, Structure, Array
ImportError: No module named _ctypes
>>> import pyglet
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.5/site-packages/pyglet/__init__.py",
line 69, in <module>
_require_ctypes_version('1.0.0')
File "/usr/local/lib/python2.5/site-packages/pyglet/__init__.py",
line 64, in _require_ctypes_version
import ctypes
File "/usr/local/lib/python2.5/ctypes/__init__.py", line 10, in
<module>
from _ctypes import Union, Structure, Array
ImportError: No module named _ctypes
>>>

python (default python )
Python 2.6b1 (r26b1:64398, Jul 4 2008, 15:57:20)
[GCC 4.3.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ctypes
>>> import pyglet
>>> print pyglet.version
1.1beta2
>>>


Try python 2.6
To see the path this is some code:

import sys
print sys.path
print sys.prefix
print sys.prefix

Have a nice day !

On Jul 5, 10:04 pm, casevh <cas...(a)gmail.com> wrote:
> On Jul 5, 11:09 am, david <dgel...(a)gmail.com> wrote:
>
>
>
> > You learn something new every day:
>
> > On my ubuntu, update-manager is supposed to use the python2.5
> > installed on /usr/bin. Well, I had subsequently installed a whole
> > bunch of stuff in /usr/local (/usr/local/bin/python and /usr/local/lib/
> > python2.5 etc), which I have happily been using for development for a
> > year. I had thought that the two pythons were completely independent.
>
> > Well, I was wrong. When /usr/bin/python2.5 runs, *by default*, it
> > adds /usr/local/lib/python2.5 to its sys path - and apparently there
> > are things in /usr/local which are inconsistent with those at /usr
> > (not suprising).
>
> > I have fixed the problem - but I had to modify the actual update-
> > manager .py file itself. At the beginning, I set the sys.path in
> > python *explicitly* to not include the /usr/local stuff.
>
> > But this is clearly a kludge. My question: how do I keep the Ubuntu
> > python stuff at /usr/bin/python2.5 from adding /usr/local/lib/
> > python2.5 to the import search path in a clean and global way? I
> > really want both pythons completely isolated from one another!
>
> > Thankyou.
>
> Python's path is build by site.py. In the file /usr/lib/python2.5/
> site.py, look for the line "prefixes.insert(0, '/usr/local')" and
> comment it out. That should do it.
>
> casevh

From: Zentrader on
On Jul 5, 11:09 am, david <dgel...(a)gmail.com> wrote:
> You learn something new every day:
>
> On my ubuntu, update-manager is supposed to use the python2.5
> installed on /usr/bin. Well, I had subsequently installed a whole
> bunch of stuff in /usr/local (/usr/local/bin/python and /usr/local/lib/
> python2.5 etc), which I have happily been using for development for a
> year. I had thought that the two pythons were completely independent.
>
> Well, I was wrong. When /usr/bin/python2.5 runs, *by default*, it
> adds /usr/local/lib/python2.5 to its sys path - and apparently there
> are things in /usr/local which are inconsistent with those at /usr
> (not suprising).
>
> I have fixed the problem - but I had to modify the actual update-
> manager .py file itself. At the beginning, I set the sys.path in
> python *explicitly* to not include the /usr/local stuff.
>
> But this is clearly a kludge. My question: how do I keep the Ubuntu
> python stuff at /usr/bin/python2.5 from adding /usr/local/lib/
> python2.5 to the import search path in a clean and global way? I
> really want both pythons completely isolated from one another!
>
> Thankyou.

When you install a second version, let us say Python3.0, you want to
download the source and do the normal config and make but not make
install. Instead do a make altinstall. They will be kept separate.
I have Ubuntu's 2.5 as well as 3.0. Ubuntu installs to /usr/bin and /
usr/lib, so I installed 3.0 from /usr/local/Python-3.0 and those files
installed into /usr/local/bin and lib and the executable is
python3.0. Take a look at the README file that comes with the source
code for other options.