Package: gsl Version: 2.5+dfsg-4 Severity: normal Tags: patch User: ubuntu-de...@lists.ubuntu.com Usertags: origin-ubuntu cosmic ubuntu-patch
Dear Dirk, In Ubuntu, I noticed that pscan-tfbs was failing to build due to unresolved symbols in libgsl.so. I don't know if the specific build failure is reproducible in Debian, but I can confirm that libgsl.so.23 is also underlinked in Debian resulting in unresolved symbols, which is not supposed to be the case for shared libraries: $ ldd -d -r /usr/lib/x86_64-linux-gnu/libgsl.so.23 linux-vdso.so.1 (0x00007ffd39dfc000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fde64546000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fde64389000) /lib64/ld-linux-x86-64.so.2 (0x00007fde64b6c000) undefined symbol: cblas_ctrmv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zswap (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zsymm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cgeru (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_sgemm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ctrsv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_sgemv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_srotg (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zgemm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cdotu_sub (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dznrm2 (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ddot (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_csymm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cher2k (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zdotu_sub (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_sdot (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_sdsdot (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cgerc (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_scnrm2 (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ctrmm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_sscal (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_strmm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zcopy (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dsyrk (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cherk (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zherk (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zher (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ztrmv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_drotmg (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dswap (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_scopy (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_scasum (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zscal (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_drotg (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zdotc_sub (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cscal (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_caxpy (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zsyr2k (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ssyr2k (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_csyr2k (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ztrsm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ctrsm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ssymm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cdotc_sub (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zher2k (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_saxpy (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_idamax (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_snrm2 (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dsdot (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cher (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dger (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cher2 (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dzasum (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dsyr2 (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ssyrk (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_strmv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dgemv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cgemm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dasum (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dsymv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_srotm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_sswap (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dtrmv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_isamax (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zhemv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zaxpy (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dcopy (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_sasum (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dsyr (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_strsm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_drot (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ztrsv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_izamax (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ssymv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_chemm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zgeru (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dtrsv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_sger (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_srot (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dsymm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ztrmm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zdscal (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zher2 (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ssyr (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dtrmm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zgerc (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_csscal (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dsyr2k (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_chemv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dnrm2 (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_drotm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_icamax (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zgemv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zhemm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cgemv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ssyr2 (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_strsv (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dscal (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dgemm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_srotmg (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_dtrsm (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_ccopy (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_zsyrk (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_cswap (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_daxpy (/usr/lib/x86_64-linux-gnu/libgsl.so.23) undefined symbol: cblas_csyrk (/usr/lib/x86_64-linux-gnu/libgsl.so.23) $ Please consider applying the attached patch to the gsl package in Debian. I have uploaded it to Ubuntu to fix the build failure of the reverse dependency. Corresponding changelog entries for these changes: * debian/patches/gsl-cblas-linkage.patch: add missing linkage on libgslcblas to libgsl.so. * specify AUTOMAKE and ACLOCAL to dh_autoreconf, to work around upstream hard-coding of automake-1.13. Thanks, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer https://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
diff -Nru gsl-2.5+dfsg/debian/patches/gsl-cblas-linkage.patch gsl-2.5+dfsg/debian/patches/gsl-cblas-linkage.patch --- gsl-2.5+dfsg/debian/patches/gsl-cblas-linkage.patch 1969-12-31 16:00:00.000000000 -0800 +++ gsl-2.5+dfsg/debian/patches/gsl-cblas-linkage.patch 2018-08-23 14:33:44.000000000 -0700 @@ -0,0 +1,19 @@ +Description: add missing linkage on libgslcblas to libgsl.so + libgsl has missing symbols because it is not linked against libgslcblas. + Fix it so the library is properly stand-alone. +Author: Steve Langasek <steve.langa...@ubuntu.com> +Last-Modified: 2018-08-23 + +Index: gsl-2.5+dfsg/Makefile.am +=================================================================== +--- gsl-2.5+dfsg.orig/Makefile.am ++++ gsl-2.5+dfsg/Makefile.am +@@ -19,7 +19,7 @@ + + lib_LTLIBRARIES = libgsl.la + libgsl_la_SOURCES = version.c +-libgsl_la_LIBADD = $(GSL_LIBADD) $(SUBLIBS) ++libgsl_la_LIBADD = $(GSL_LIBADD) $(SUBLIBS) cblas/libgslcblas.la + libgsl_la_LDFLAGS = $(GSL_LDFLAGS) -version-info $(GSL_LT_VERSION) + noinst_HEADERS = templates_on.h templates_off.h build.h + diff -Nru gsl-2.5+dfsg/debian/patches/series gsl-2.5+dfsg/debian/patches/series --- gsl-2.5+dfsg/debian/patches/series 2018-06-25 04:24:40.000000000 -0700 +++ gsl-2.5+dfsg/debian/patches/series 2018-08-23 13:25:31.000000000 -0700 @@ -1,3 +1,4 @@ dont-disable-deprecated ## dont-disable-deprecated.full ## reset-so-number +gsl-cblas-linkage.patch diff -Nru gsl-2.5+dfsg/debian/rules gsl-2.5+dfsg/debian/rules --- gsl-2.5+dfsg/debian/rules 2018-06-25 04:27:41.000000000 -0700 +++ gsl-2.5+dfsg/debian/rules 2018-08-23 14:33:27.000000000 -0700 @@ -104,7 +104,7 @@ #[ -d doc ] || mkdir doc #cp -vax debian/Makefile.in.doc doc/Makefile.in - dh_autoreconf + AUTOMAKE=automake ACLOCAL=aclocal dh_autoreconf ./configure CFLAGS="$(CFLAGS)" \ LDFLAGS="$(LDFLAGS)" \ --prefix=/usr \ @@ -131,7 +131,7 @@ #[ -d doc ] || mkdir doc #cp -vax debian/Makefile.in.doc doc/Makefile.in - dh_autoreconf + AUTOMAKE=automake ACLOCAL=aclocal dh_autoreconf ./configure CFLAGS="$(CFLAGS)" \ --prefix=/usr \ --disable-shared \