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

Bug#731987: lintian: False positive for sharedobject-in-library-directory-missing-soname



* Niels Thykier <niels@thykier.net>, 2014-10-01, 20:48:
@Jörg: I think shotwell is a true positive. The binary is - by readelf - identified as a shared object.

$ readelf -h  unpack/usr/lib/shotwell-video-thumbnailer | grep Type:
 Type:                              DYN (Shared object file)

Presumably that's because it's a position-independent executable. They are identified by readelf as shared libraries because technically they ARE shared libraries.

Compare this with (e.g.) /bin/ls, which is an executable.

$ readelf -h  /bin/ls | grep Type:
 Type:                              EXEC (Executable file)

$ readelf -h /bin/dash | grep Type:
 Type:                              DYN (Shared object file)

I think Lintian could assume that if a file has +x bit set, and it doesn't have *.so or *.so.* extension, then it wasn't meant to be a public shared library. (But maybe there's a better way. IANA ELF expert!)

(Personally I find the practice of putting private executables directly into /usr/lib/ a little bit odd. I'd expect them in /usr/lib/<package> instead.)

--
Jakub Wilk


Reply to: