On Mon, Sep 16, 2019 at 05:20:06PM +0200, intrig...@debian.org wrote: > Package: libcairo-gobject-perl > Version: 1.004-3 > Severity: important > > I've spotted this error while packaging 1.005: > > E: libcairo-gobject-perl: library-not-linked-against-libc > usr/lib/x86_64-linux-gnu/perl5/5.28/auto/Cairo/GObject/GObject.so
> 1. 1.004-3+b1 that's in the archive (binNMU from 2018-11-02) > > - there's a "NEEDED" for libc.so.6 > - the "DYNAMIC SYMBOL TABLE" section includes: > > 0000000000000000 w DF *UND* 0000000000000000 GLIBC_2.2.5 > __cxa_finalize > > 2. Fresh build of 1.005-1 > > - no "NEEDED" for libc.so.6, hence the Lintian error > - __cxa_finalize is still present in the dynamic symbol table > > So this does not look like a false positive: at least one symbol from > libc is directly used by the library, so presumably it should be > linked against libc. The 'w' indicates a weak symbol. I expect that's why it doesn't result in a NEEDED entry. #896012 explains the behaviour if I understand it correctly: -lc used to be exempt from --as-needed but apparently GCC changed in that regard. Quoting doko there: If the plugin doesn't have a reference to libc and --as-needed is specified as in your case, then libc isn't linked in. So it seems to me that this is a false positive, and as discussed in #909267 lintian needs to get smarter. -- Niko