On Tue, Dec 18, 2012 at 11:41:54PM +0600, Andrey Rahmatullin wrote: > Package: debian-policy > Severity: wishlist
> Hereinafter "libraries" means "public shared libraries" per Policy ยง8 and
> only them.
> I couldn't find in the Policy anything about underlinked libraries while I
> believe that having them is wrong and should be considered a bug.
> I mean libraries that are not directly linked against all libraries whose
> symbols are used. In the worst case this manifests as "undefined reference"
> lines in the ldd -r output and means that you must satisfy these references by
> linking additional libraries to the binaries that use the underlinked library
> (by linking against it or dlopening it). If you don't do this, sometimes you
> may not notice the problem until you invoke a specific code path that uses
> these references. Formally this also means that packages using the underlinked
> library may have RC bugs that can't be fixed, only worked around by linking
> additional libraries (cf. #694846 caused by #677721).
Policy 10.2:
Although not enforced by the build tools, shared libraries must be
linked against all libraries that they use symbols from in the same
way that binaries are. This ensures the correct functioning of the
symbols and shlibs systems and guarantees that all libraries can be
safely opened with `dlopen()'. Packagers may wish to use the gcc
option `-Wl,-z,defs' when building a shared library. Since this
option enforces symbol resolution at build time, a missing library
reference will be caught early as a fatal build error.
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
[email protected] [email protected]
signature.asc
Description: Digital signature

