shared-library-lacks-version
The listed shared library in a public library directory has an
SONAME that does not contain any versioning information, either after the
.so
or before it and set off by a hyphen. It cannot therefore
be represented in the shlibs system, and if linked by binaries its
interface cannot safely change. There is no backward-compatible way to
migrate programs linked against it to a new ABI.
Normally, this means the shared library is a private library for a
particular application and is not meant for general use. Policy
recommends that such libraries be installed in a subdirectory of
/usr/lib
rather than in a public shared library directory.
To view the SONAME of a shared library, run readelf -d
on the
shared library and look for the tag of type SONAME.
There are some special stub libraries or special-purpose shared objects for which an ABI version is not meaningful. If this is one of those cases, please add an override.
Severity: | warning |
Experimental: | false |
Renamed from: | shlib-without-versioned-soname |
See also
Libraries (Section 10.2) in the Debian Policy Manual
Dependencies between the library and other packages (Section 8.6) in the Debian Policy Manual
- list of all the affected packages
- the source of this tag