On Wed, Jul 22, 2009 at 8:47 AM, Steve M. Robbins<st...@sumost.ca> wrote: > Hi, > > Recently, Mathieu Malaterre wrote to say that having a SOVERSION on a > python module is wrong, with reference to an oblique comment from > Josselin Mouette [1]. > > Is this true? What is the rationale for not versioning these shared > objects? > > Is there any "more official" document that mandates this? For > example, the python policy?
This issue was raised by Denis Barbier. This makes particular sense for the C#/Java target language since one setup a proper LD_LIBRARY_PATH and then an internal mechanism load the internal glue lib. The version of the glue lib is not very important in this case and furhtermore cannot even be expressed AFAIK. For instance, in Java: static { try { System.loadLibrary("gdcmjni"); } catch (UnsatisfiedLinkError e) { System.err.println("Native code library failed to load. \n" + e); System.exit(1); } } In C#: [DllImport("gdcmsharpglue", EntryPoint="CSharp_ImageWriterUpcast")] It would be extremely nice too if all wrap language would adopt the same convention. So that toolkit such as VTK/ITK/GDCM wrapping their interface into multiple languages (namely: Tcl, Python, Java, C#) could simply decide: (1) Allow SONAME (2) Use a directory convention libfoo-$SOVERSION/$NAME.so for packaging mutiple modules. I know that Python had some other convention such as preprending underscore, but I have never seen any need for SONAME on modules. 2cts, -- Mathieu http://mathieumalaterre.com -- To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org