[Distutils] pythonv, take two

Carl Meyer carl at oddbird.net
Thu Mar 17 17:16:47 CET 2011


Hi Vinay,

On 03/17/2011 06:25 AM, Vinay Sajip wrote:
> It seems to work with a symlink but not with a copy. With an empty pythonv.conf
> file in ~/projects/vptest:
> 
> vinay at eta-natty:~/projects/vptest/bin$ ln -s ~/tools/cpythonv/python
> vinay at eta-natty:~/projects/vptest/bin$ ./python
> Python 3.3a0 (pythonv2:e56f05883ceb, Mar 17 2011, 09:07:29) 
> [GCC 4.5.2] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
>>>> import sys
>>>> sys.path
> ['', '/usr/local/lib/python33.zip', '/home/vinay/tools/cpythonv/Lib',
> '/home/vinay/tools/cpythonv/Lib/plat-linux2',
> '/home/vinay/tools/cpythonv/build/lib.linux-i686-3.3',
> '/home/vinay/projects/vptest/lib/python3.3/site-packages']
>>>>
> vinay at eta-natty:~/projects/vptest/bin$ rm python
> vinay at eta-natty:~/projects/vptest/bin$ cp ~/tools/cpythonv/python .
> vinay at eta-natty:~/projects/vptest/bin$ ./python
> Python 3.3a0 (pythonv2:e56f05883ceb, Mar 17 2011, 09:07:29) 
> [GCC 4.5.2] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
>>>> import sys
>>>> sys.path
> ['', '/usr/local/lib/python33.zip', '/usr/local/lib/python3.3',
> '/usr/local/lib/python3.3/plat-linux2', '/usr/local/lib/python3.3/lib-dynload',
> '/usr/local/lib/python3.3/site-packages']

This is odd, as the same setup works fine for me with a copied binary
(I'm on Ubuntu 10.10). If you're willing to do any more debugging on
this, here's what would be helpful:

1. Check the values of sys.executable, sys.prefix, and sys.exec_prefix.
2. Stick a pdb.set_trace() into site.py near the top of the virtualize()
method and step through it, observing where something goes awry. In
particular: does it find pythonv.conf? Does it modify PREFIXES?

Thanks for testing it out!

Carl


More information about the Distutils-SIG mailing list