* Jens Reyer <[email protected]>, 2016-07-05, 21:24:
First off, many thanks again for that script. Unfortunately it fails in
Ubuntu (see #827770):
./debian/scripts/sonames2elf libcups.so.2 libdbus-1.so.3 libfontconfig.so.1
libfreetype.so.6 libGL.so.1 libgnutls.so.30 libgsm.so.1 libjpeg.so.8
libncurses.so.5 libodbc.so.2 libopenal.so.1 libOSMesa.so.8 libpng16.so.16
libtiff.so.5 libX11.so.6 libXcomposite.so.1 libXcursor.so.1 libXext.so.6
libXi.so.6 libXinerama.so.1 libXrandr.so.2 libXrender.so.1 libxslt.so.1
libXxf86vm.so.1 > debian/tmp/elf.recommends
/usr/bin/ld: cannot find libGL.so.1
collect2: error: ld returned 1 exit status
debian/rules:153: recipe for target 'override_dh_shlibdeps' failed
In Ubuntu libGL.so.1 is in /usr/lib/<arch>/mesa/.
Ugh. :-\
This is not a problem for normally linking with -lGL because the
libGL.so symlink lives directly in /usr/lib/<triplet>/.
It's also not a problem at runtime, because /usr/lib/<triplet>/mesa/ is
included in /etc/ld.so.conf.d/<triplet>_GL.conf.
But it does break sonames2elf, because ld(1) doesn't pay attention to
/etc/ld.so.conf*.
As a work-around, changing "libGL.so.1" to "libGL.so" in the sonames2elf
command-line seems to do the trick. (You may want to implement extra
check to ensure that the linker found exactly the same SONAME as it
should.)
--
Jakub Wilk