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

Re: Pkg config lintian error



Hi,

On 07/28/2014 13:29, Valerio Mariani wrote:
> The crystfel.pc file is like this:
> 
> ---Start ---
> prefix=@prefix@
> exec_prefix=@exec_prefix@
> libdir=@libdir@
> includedir=@includedir@
> 
> Name: CrystFEL
> Description: Useful routines for crystallography using a free-electron
> laser
> Version: @VERSION@
> Cflags: -I${includedir} @LIBCRYSTFEL_CFLAGS@
> Libs: -L${libdir} -lcrystfel @LIBCRYSTFEL_LIBS@
> --- End ---

What do @LIBCRYSTFEL_CFLAGS@ and @LIBCRYSTFEL_LIBS@ contain?

I suspect they are the compiler and linker options that were used to
build libcrystfel, but they should contain the options needed to build
binaries using libcrystfel.

In particular, Libs: and Cflags: should not contain libraries that are
only used internally by libcrystfel.

> After the subtitutions are carried out, this is what I get:
> 
> ---Start ---
> prefix=/data/Software/crystfel/stage
> exec_prefix=${prefix}
> libdir=${exec_prefix}/lib
> includedir=${prefix}/include
> 
> Name: CrystFEL
> Description: Useful routines for crystallography using a free-electron
> laser
> Version: 0.5.3a
> Cflags: -I${includedir} -g -O2
> Libs: -L${libdir} -lcrystfel  -lutil -lhdf5 -lgsl -lgslcblas -lm -lfftw3
> --- End ---
>
> Unfortunately, lintian gives me this error:
>
> E: crystfel-dev: pkg-config-bad-directive
> usr/lib/i386-linux-gnu/pkgconfig/crystfel.pc --param=ssp-buffer-size=4

Is this actually the version of crystfel.pc included in the Debian
package you built? The prefix looks very strange for that. It also
doesn't fit with the lintian errors.

Anyway, "-g -O2" should really not be there as explained above. The same
might apply for the libraries (depends on how they are used).

Ansgar


Reply to: