Étienne Mollier wrote: > I had a look at the autopkgtest failure affecting biobambam2, > and since these segmentation faults were showing up only in my > autopkgtest environment, and not when using the package directly > on my system, it felt like a missing dependency. So I trapped > system calls issued by the `bamsormadup` command using `strace` > within the run-unit-test script, and it turned out the program > was searching for a libz.so library. > > After appending the zlib1g-dev package to dependencies of the > biobambam2 package,
It is in fact libmaus2 that is dlopening "libz.so", so it would be better to add to the dependencies of that package, which is a prerequisite of biobambam2. However this is really a bug in libmaus2, as it is incorrect to use that file with that name at runtime [1]. So the better fix would be to patch libmaus2 to use the runtime filename ("libz.so.1") that is provided by Debian's zlib1g (and ensure that libmaus2 depends on zlib1g -- without ‑dev) in anticipation of upstream libmaus2 making a similar fix. Thus (as Debian controls exactly the libz.so.1 filename, unlike for the upstream patch): +++ b/src/libmaus2/lz/ZlibInterface.hpp @@ -53,7 +53,7 @@ namespace libmaus2 static std::string getDefaultZLibName() { return "../lib/libz_cf.so\ti386:sse4_2,i386:pclmulqdq\n" - "libz.so\t\n"; + "libz.so.1\t\n"; } John [1] https://gitlab.com/german.tischler/libmaus2/-/issues/31