Re: Lintian warnings on A+ package
On Jan 9, Francesco P. Lovergine (email@example.com) wrote:
> On Wed, Jan 09, 2002 at 11:45:23AM -0500, Neil L. Roeth wrote:
> > On Jan 9, Robert Bihlmeyer (firstname.lastname@example.org) wrote:
> > > "Sean 'Shaleh' Perry" <email@example.com> writes:
> > >
> > > > > 3) "non-dev-pkg-with-shlib-symlink /usr/lib/libMSGUI.so.0.0.0
> > > > > /usr/lib/libMSGUI.so" (warning) This package is an interpreter, and the
> > > > > shared
> > > > > libraries are for running that, NOT to be linked against, so I think this is
> > > > > benign and I can ignore them. Yes or no?
> > > >
> > > > libfoo.so is ONLY used to link a program with, otherwise the libfoo.so.X.X is
> > > > used. So you should not ship a .so except in a -dev package.
> > >
> > > In addition, shared objects that are not intended for general use
> > > (i.e. are not really "shared libraries") should not go into /usr/lib,
> > > but some subdirectory (e.g. /usr/lib/aplus). For example, mozilla-*
> > > uses /usr/lib/mozilla/components/. A soname is also not mandatory in
> > > this case.
> > OK, that sounds appropriate for this package. Then, since the libraries will
> > not be in the standard directories, should I let the binary contain the rpath,
> > or remove it and put the directories into ld.so.conf, or do something else?
> Wait, wait... Those stuff are loaded EXPLICITELY with dlopen() within the programs.
> It's completely different in respect with .so lib searching at loading time.
> If this is the case, you do not need to have an -rpath option at all.
> -rpath is used by ld.so ONLY.
> If your program uses rpath option,
> it probably use ld.so for shared libs loading instead.
> So, you cannot adopt that trick.
OK, if I understand correctly, since the a+ binary has an rpath (about which
lintian complains), it is not using dlopen() unlike mozilla, so I should not
be creating a separate library directory. I put the libraries in /usr/lib,
removed the .so links and left the .so.0.0.0 files, and package appears to
work fine and those lintian errors have disappeared. I'll leave it like that
unless someone tells me otherwise.
Neil L. Roeth