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

Re: Lintian error library-not-linked-against-libc for octave-stk



Le 14/09/2019 à 17:33, Sébastien Villemot a écrit :
Le jeudi 05 septembre 2019 à 15:40 +0200, Rafael Laboissière a écrit :
Building the new upstream version 2.6.0 of package octave-stk triggers
loads of Lintian errors like this one:

  E: octave-stk: library-not-linked-against-libc usr/lib/x86_64-linux-
gnu/octave/packages/stk-2.6.0/x86_64-pc-linux-gnu-api-
v52/__stk_dist_pairwise__.mex

Indeed, libc.so.* does not appear as NEEDED in the Dynamic Section of
objdump for the  MEX file above:

  $ objdump -x src/__stk_dist_pairwise__.mex | grep "^  NEEDED"
    NEEDED               liboctinterp.so.6
    NEEDED               libm.so.6

This is not the case for all MEX files, for instance:

  $ objdump -x src/__stk_sampling_vdc_rr2__.mex | grep "^  NEEDED"
    NEEDED               liboctinterp.so.6
    NEEDED               libc.so.6

for which the Lintian error is not triggered.

The octave-stk package works fine, because MEX files are not "shared
libraries" in the strict sense of the term.  It seems like this is a
Lintian's false positive.
According to the tag description¹, there are legitimate cases where the
library is not linked to libc, in which case lintian will still
complain. It looks like this is such a situation, because the library
is not underlinked.² So I would simply add an override.

This issue was already discussed on the old list (Pkg-octave-devel) a long time ago (november 2015, look for "octave-stk: current status / help needed" in the title).

The discussion resulted in the following overrides:

$ cat debian/octave-stk.lintian-overrides
# Ignore library-not-linked-against-libc warning
# since no symbol from libc is used in this mex-files:
octave-stk binary: library-not-linked-against-libc */__stk_dist_matrixx__.mex octave-stk binary: library-not-linked-against-libc */__stk_dist_matrixy__.mex octave-stk binary: library-not-linked-against-libc */__stk_dist_pairwise__.mex octave-stk binary: library-not-linked-against-libc */__stk_distrib_bivnorm0_cdf__.mex octave-stk binary: library-not-linked-against-libc */__stk_filldist_discr_mex__.mex octave-stk binary: library-not-linked-against-libc */__stk_gpquadform_matrixx__.mex octave-stk binary: library-not-linked-against-libc */__stk_gpquadform_matrixy__.mex octave-stk binary: library-not-linked-against-libc */__stk_gpquadform_pairwise__.mex
octave-stk binary: library-not-linked-against-libc */__stk_mindist_mex__.mex

So, I don't understand why you still get warnings...

@++
Julien



Reply to: