Hi, I'm packaging a piece of software that are making me crazy with the lintian messages. The piece is rtt-ros-integratiion [1]. An usable package is located here [2]. It belongs to the orocos project.
The question is that the package creates a few libraries in /usr/lib and a
bunch of small libraries (used as plugins but treated libraries by upstream
(with pkg-control files, etc).
I have patched upstream code to make SONAMEs in the libraries installed in
/usr/lib, but I try to avoid to patch upstream to the libraries/plugins
installed in /usr/lib/orocos.
The problem is that when I create a library (plugin) that is not installed in
/usr/lib I get this lintian messages:
pkg-has-shlibs-control-file-but-no-actual-shared-libs
Although the package does not include any shared libraries, it does have
a shlibs control file. If you did include a shared library, check that
the SONAME of the library is set and that it matches the contents of the
shlibs file.
....
binary-or-shlib-defines-rpath
usr/lib/orocos/gnulinux/rtt_actionlib_msgs/types/librtt-actionlib_msgs-ros-
transport-gnulinux.
The binary or shared library sets RPATH. This overrides the normal
library search path, possibly interfering with local policy and causing
problems for multilib, among other issues.
...
librtt-ros-msgs-gnulinux2.8: postinst-has-useless-call-to-ldconfig
The postinst script calls ldconfig even though no shared libraries are
installed in a directory controlled by the dynamic library loader.
Note this may be triggered by a bug in debhelper, that causes it to
auto-generate an ldconfig snippet for packages that does not need it.
Refer to Debian Policy Manual section 8.1.1 (ldconfig) and
http://bugs.debian.org/204975 for details.
...
W: librtt-ros-msgs-gnulinux2.8: postrm-has-useless-call-to-ldconfig
The postrm script calls ldconfig even though no shared libraries are
installed in a directory controlled by the dynamic library loader.
....
The question is that lintian is doing a good job because that messages are
correct. However, I would like to say to lintian to "relax" this check because
that libraries are not "libraries", they are plugins. So:
- how can I avoid that messages without to put a bunch (we are talking about
>50 plugins) lintian-overrides?
- may I worried of the messages and I'm doing realy something wrong?
Any advice in this topic will be thankful,
Best regards,
Leopold
----
[1] https://github.com/orocos/rtt_ros_integration
[2]
http://anonscm.debian.org/cgit/debian-science/packages/orocos/rtt-ros-integration.git/
pkg-has-shlibs-control-file-but-no-actual-shared-libs
lthough the package does not include any shared libraries, it does have
N: a shlibs control file. If you did include a shared library, check that
N: the SONAME of the library is set and that it matches the contents of the
N: shlibs file.
N:
N: SONAMEs are set with something like gcc -Wl,-soname,libfoo.so.0, where 0
N: is the major version of the library. If your package uses libtool, then
N: libtool invoked with the right options should be doing this.
N:
N: Note this is sometimes triggered for packages with a private shared
N: library due to a bug in Debhelper.
N:
N: Refer to http://bugs.debian.org/204975 and http://bugs.debian.org/633853
N: for details.
--
--
Linux User 152692 GPG: 05F4A7A949A2D9AA
Catalonia
-------------------------------------
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
signature.asc
Description: This is a digitally signed message part.

