Package: dpkg,debhelper
Severity: important

dh_shlibdeps has a nice comment for the -l option:

"""
With recent versions of dpkg-shlibdeps, this is mostly only useful for packages
that build multiple flavors of the same library, or other situations where the
library is installed into a directory not on the regular library search path.
"""

Unfortunately it does break cross builds too; seen this when building a gcc
cross targeting a multilib soft-/hard-float ARM target, and a powerpc biarch
target, like:

DIRNAME=sf  dh_shlibdeps -plibsfgcc1
-l/lib/arm-linux-gnueabi:/usr/lib/arm-linux-gnueabi:/lib/arm-linux-gnueabi:/usr/lib/arm-linux-gnueabi:/usr/arm-linux-gnueabi/lib
/usr/bin/perl: error while loading shared libraries:
/lib/arm-linux-gnueabi/libc.so.6: internal error
dh_shlibdeps: dpkg-shlibdeps -Tdebian/libsfgcc1.substvars
debian/libsfgcc1/lib/arm-linux-gnueabi/libgcc_s.so.1 returned exit code 127
make[1]: *** [stamps/08-binary-stamp-libsfgcc] Error 127

There might be some bugs regarding the dynamic loader which are seen by exposing
the libraries of different architectures within multiarch configurations.
However the issue, that perl can't find it's own libraries can be solved on it's
own:

 - dpkg-shlibdeps should get an option (-l?) to pass an extra library
   path.

 - dh_shlibdeps should use this option to pass the argument given by
   it's own -l option.

Thanks for considering

  Matthias


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to