[Pythonmac-SIG] python package module name collision

Jack Jansen Jack.Jansen@oratrix.com
Sat, 13 Jul 2002 00:00:29 +0200


On vrijdag, juli 12, 2002, at 05:20 , Greg Welch wrote:

> I am using Python 2.2.1-6 (from Fink) on OS X 10.1.5. A colleague (Gary
> Bishop) and I have found what seems to be a bug in that version 
> of Python on
> the Mac. I have verified it in the stock tgz release of 2.2.1. 
> The problem
> does not seem to occur w/ the same Python under Windows (Cygwin).
>
> I have made a tiny tgz archive with code that illustrates the 
> problem. The
> file is at
>
>     http://mac-welch.cs.unc.edu/~welch/tmp/samename.tgz
>
> Just unpack, "cd samename," and "sudo python setup.py install."
>
> The problem occurs when (it seems) if you have two *different* 
> extension
> packages ("Package_1" and "Package_2" in my example) that use different
> shared library modules that have the *same* name ("samename.so" in my
> example).

This will be fixed in 2.3 (and is already fixed if you build 
Python from CVS). It cannot be fixed in the 2.2.X series, 
however, because the fix breaks some programs, and that is 
disallowed for minor version unless you can convincingly prove 
that the programs were broken anyway (I believe they were, but I 
wasn't convincing enough:-). There are sets of extension modules 
out there that belong together and think they can access each 
others global symbols, i.e. if you have a module second.so which 
refers to symbols defined in first.so and you load first first 
and second afterwards it will magically work.

I'm using PyOpenGL on OSX with the CVS head, and it works fine 
(well, except for stereo, but that's a whole different issue. If 
you happen to be working on stereo too I'd like a hand there:-)

--
- Jack Jansen        <Jack.Jansen@oratrix.com>        
http://www.cwi.nl/~jack -
- If I can't dance I don't want to be part of your revolution -- 
Emma Goldman -