[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Putting .so symlinks in libs package for dlopen()ing?



On Mon, 2002-12-09 at 00:26, Timshel Knoll wrote:

> I'm having issues with getting parted's reiserfs support to work in a
> way that complies with Debian policy. The issue is that parted dlopen()s
> libreiserfs.so and libdal.so (from the libreiserfs-0.3-{0,dev}
> packages) for its reiserfs support. This is fine, but the issue is that
> the .so symlinks are in the -dev package, so parted's reiserfs support
> fails unless the -dev package is installed (BAD). This problem is the
> cause of bug #163107.
> 
> Possible solutions:
*snip*
> 2. Make parted dlopen() libreiserfs-0.3.so.0 rather than libreiserfs.so.
>    This will solve the problem, but is not ideal solution since a minor
>    version upgrade or SONAME change of libreiserfs will break parted's
>    reiserfs support (note that parted does its own internal checking of
>    libreiserfs versions to make sure it is compatible, and gracefully
>    fails if it can't resolve all required symbols on dlopen()).
>    Also, the parted source code needs to be manually edited on every
>    minor or SONAME change of library.
> 
I don't see why this is a problem, you'd only need to change the
dlopen() code if there's a SONAME change - and that should only change
if there's a binary-incompatible difference.  A difference that might
not be picked up by the internal checking of the code.

The Debian package name of libreiserfs (libreiserfs0.3-0) is also named
after the SONAME, so you'll have to change the depend anyway - so why
not change the code at the same time?

Scott
-- 
Scott James Remnant     Have you ever, ever felt like this?  Had strange
http://netsplit.com/      things happen?  Are you going round the twist?

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: