Hi, In healpix-cxx, I'm getting warnings from dh_shlibdeps about missing OpenMP symbols. See, for example, this excerpt from https://buildd.debian.org/status/fetch.php?pkg=healpix-cxx&arch=i386&ver=3.11.2-6&stamp=1401836504:
> dpkg-shlibdeps: warning: symbol GOMP_critical_end used by > debian/libhealpix-cxx0/usr/lib/i386-linux-gnu/libhealpix_cxx.so.0.0.0 found > in none of the libraries > dpkg-shlibdeps: warning: symbol GOMP_loop_end used by > debian/libhealpix-cxx0/usr/lib/i386-linux-gnu/libhealpix_cxx.so.0.0.0 found > in none of the libraries > dpkg-shlibdeps: warning: symbol omp_get_wtime used by > debian/libhealpix-cxx0/usr/lib/i386-linux-gnu/libhealpix_cxx.so.0.0.0 found > in none of the libraries > ... Furthermore, the package built by the buildd is missing a dependency on libgomp1: https://packages.debian.org/sid/libhealpix-cxx0 However, when I build the package on my own box, I get no such warnings. In fact, if I run dh_shlibdeps verbosely, I see that it is correctly detecting the libgomp.so. It also correctly adds a dependency on libgomp1. > dh_shlibdeps -- --warnings=7 -v > >> Scanning > >> debian/libhealpix-cxx0/usr/lib/x86_64-linux-gnu/libhealpix_cxx.so.0.0.0 > >> (for Depends field) > Library libcfitsio.so.3 found in /usr/lib/x86_64-linux-gnu/libcfitsio.so.3 > Library libpthread.so.0 found in /lib/x86_64-linux-gnu/libpthread.so.0 > Library libstdc++.so.6 found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6 > Library libm.so.6 found in /lib/x86_64-linux-gnu/libm.so.6 > Library libc.so.6 found in /lib/x86_64-linux-gnu/libc.so.6 > Library libgcc_s.so.1 found in /lib/x86_64-linux-gnu/libgcc_s.so.1 > Library libgomp.so.1 found in /usr/lib/x86_64-linux-gnu/libgomp.so.1 > Using symbols file /var/lib/dpkg/info/libc6:amd64.symbols for libpthread.so.0 > Using symbols file /var/lib/dpkg/info/libgomp1:amd64.symbols for libgomp.so.1 > Using symbols file /var/lib/dpkg/info/libstdc++6:amd64.symbols for > libstdc++.so.6 > Using symbols file /var/lib/dpkg/info/libc6:amd64.symbols for libc.so.6 > Using symbols file /var/lib/dpkg/info/libc6:amd64.symbols for libm.so.6 > Using symbols file /var/lib/dpkg/info/libgcc1:amd64.symbols for libgcc_s.so.1 > Using symbols file /var/lib/dpkg/info/libcfitsio3:amd64.symbols for > libcfitsio.so.3 It even works when I build with pbuilder on my own machine. I found an earlier thread that may be related: https://lists.debian.org/debian-devel/2011/03/msg01198.html In the end, it seems like the suggestion there is to make certain that -fopenmp flag is being passed when linking: > You normally don't (need to) link to gomp explicitly. My wild guess is: > Dmitry used -fopenmp while compiling *.o, but not when linking the shared > library. What have I missed? Thanks, Leo Singer Graduate Student @ LIGO-Caltech -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/5f61c946-eeb8-4269-adf7-b19106621...@ligo.org