[Python-Dev] versioned .so files for Python 3.2

James Y Knight foom at fuhm.net
Fri Jun 25 02:23:51 CEST 2010


On Jun 24, 2010, at 5:53 PM, Scott Dial wrote:
> On 6/24/2010 5:09 PM, Barry Warsaw wrote:
>>> What use case does this address?
>>>> Specifically, it's the use case where we (Debian/Ubuntu) plan on 
>> installing
>> all Python 3.x packages into /usr/lib/python3/dist-packages. As of 
>> PEP 3147,
>> we can do that without collisions on the pyc files, but would still 
>> have to
>> symlink for extension module .so files, because they are always 
>> named foo.so
>> and Python 3.2's foo.so won't (modulo PEP 384) be compatible with 
>> Python 3.3's
>> foo.so.
>> If the package has .so files that aren't compatible with other version
> of python, then what is the motivation for placing that in a shared
> location (since it can't actually be shared)

Because python looks for .so files in the same place it looks for 
the .py files of the same package. E.g., given a module like lxml, it 
contains the following files (among others):
lxml/
lxml/__init__.py
lxml/__init__.pyc
lxml/builder.py
lxml/builder.pyc
lxml/etree.so
And you can only put it in one place. Really, python should store 
the .py files in /usr/share/python/, the .so files in /usr/lib/x86_64- 
linux-gnu/python2.5-debug/, and the .pyc files in /var/lib/python2.5- 
debug. But python doesn't work like that.
James


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /