Opened 5 years ago

Last modified 5 years ago

#3787 new defect

pkg-config references unknown shared library

Reported by: Bas Couwenberg Owned by: grass-dev@…
Priority: normal Milestone: 7.6.2
Component: Default Version: svn-releasebranch76
Keywords: Cc:
CPU: Unspecified Platform: Linux

Description

The lintian QA tool reported several pkg-config-references-unknown-shared-library issues:

  • usr/share/pkgconfig/grass.pc -lgrass_gmath
  • usr/share/pkgconfig/grass.pc -lgrass_gis
  • usr/share/pkgconfig/grass.pc -lgrass_datetime
  • usr/share/pkgconfig/grass.pc -lgrass_gproj
  • usr/share/pkgconfig/grass.pc -lgrass_raster
  • usr/share/pkgconfig/grass.pc -lgrass_vector
  • usr/share/pkgconfig/grass.pc -lgrass_dbmibase
  • usr/share/pkgconfig/grass.pc -lgrass_dbmiclient
  • usr/share/pkgconfig/grass.pc -lz
  • usr/share/pkgconfig/grass76.pc -lgrass_gmath
  • usr/share/pkgconfig/grass76.pc -lgrass_gis
  • usr/share/pkgconfig/grass76.pc -lgrass_datetime
  • usr/share/pkgconfig/grass76.pc -lgrass_gproj
  • usr/share/pkgconfig/grass76.pc -lgrass_raster
  • usr/share/pkgconfig/grass76.pc -lgrass_vector
  • usr/share/pkgconfig/grass76.pc -lgrass_dbmibase
  • usr/share/pkgconfig/grass76.pc -lgrass_dbmiclient
  • usr/share/pkgconfig/grass76.pc -lz

The tag description is as follows:

   The specified pkg-config(1) file references a shared object via, for
   example, Libs: -lfoo but this package appears to not ship the
   associated "libfoo.so" shared library.
   
   This will result in a linker error and was likely caused by a missing
   installation step.
   
   Please ensure that your package ships the corresponding libfoo.so
   shared object file.
   
   Refer to the pkg-config(1) manual page and
   https://bugs.debian.org/919180 for details.

Part of the problem is that the libraries are in a private directory like:

./usr/lib/grass76/lib/libgrass_gmath.7.6.so
./usr/lib/grass76/lib/libgrass_gmath.so -> libgrass_gmath.7.6.so

And not having the .so symlink provided by the grass-dev package like for normal shared library packages.

Another issue is that -lm & -lz should probably be moved from Libs: to Libs.private:.

Change History (1)

comment:1 by martinl, 5 years ago

Milestone: 7.6.17.6.2

Ticket retargeted after milestone closed

Note: See TracTickets for help on using tickets.