[Debian-med-packaging] Bug#893192: libseqlib: pkg-config file is missing -lz for linking zlib

Adam Conrad adconrad at debian.org
Sat Mar 17 08:36:45 UTC 2018


Package: libseqlib
Version: 1.1.1+dfsg-4
Severity: important
Tags: patch
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu bionic ubuntu-patch



In Ubuntu, the attached patch was applied to achieve the following:

  * debian/patches/pkg-config.patch: Add -lz to Libs, as we link with it.

This probably went overlooked in Debian as libseqlib's primary consumer
happens to be freebayes, which just happens to link -lz on its own, and
because Debian doesn't link with --as-needed, the linker happily picks
up that reference and runs with it.

In Ubuntu, we link with --as-needed, so freebayes' earlier -lz reference
is discarded by the time we come to link libseqlib, and it explodes.

It would, of course, also explode if you attempted to link something that
doesn't link -lz, but using pkg-config --libs.

Anyhow, hopefully this makes sense.  Feel free to ask me if it doesn't.

... Adam

-- System Information:
Debian Release: buster/sid
  APT prefers bionic
  APT policy: (500, 'bionic')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.15.0-10-lowlatency (SMP w/4 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_CA:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
-------------- next part --------------
diff -Nru libseqlib-1.1.1+dfsg/debian/patches/pkg-config.patch libseqlib-1.1.1+dfsg/debian/patches/pkg-config.patch
--- libseqlib-1.1.1+dfsg/debian/patches/pkg-config.patch	2018-03-05 08:25:15.000000000 -0700
+++ libseqlib-1.1.1+dfsg/debian/patches/pkg-config.patch	2018-03-17 02:24:12.000000000 -0600
@@ -13,7 +13,7 @@
 +Name: libseqlib
 +Version: @VERSION@
 +Description: C++ htslib/bwa-mem/fermi interface for interrogating sequence data
-+Libs: -L${libdir} -lseqlib -lfml -lbwa -lssw
++Libs: -L${libdir} -lseqlib -lfml -lbwa -lssw -lz
 +Cflags: -I${includedir}
 +
 --- a/Makefile.am
diff -Nru libseqlib-1.1.1+dfsg/debian/patches/use_private_htslib_headers.patch libseqlib-1.1.1+dfsg/debian/patches/use_private_htslib_headers.patch
--- libseqlib-1.1.1+dfsg/debian/patches/use_private_htslib_headers.patch	2018-03-05 08:25:15.000000000 -0700
+++ libseqlib-1.1.1+dfsg/debian/patches/use_private_htslib_headers.patch	2018-03-17 02:25:40.000000000 -0600
@@ -21,7 +21,7 @@
 @@ -7,5 +7,5 @@ Name: libseqlib
  Version: @VERSION@
  Description: C++ htslib/bwa-mem/fermi interface for interrogating sequence data
- Libs: -L${libdir} -lseqlib -lfml -lbwa -lssw
+ Libs: -L${libdir} -lseqlib -lfml -lbwa -lssw -lz
 -Cflags: -I${includedir}
 +Cflags: -I${includedir} -I/usr/include/htslib
  


More information about the Debian-med-packaging mailing list