Package: dpkg-dev
Version: 1.18.4
Severity: normal
Hello,
In Objdump.pm, we use debarch_to_gnutriplet(get_host_arch()).'-objdump';
to run dpkg-shlibdeps on package objects.
When building a cross-compiler, this is however not working. The
cross-compiler itself is fine (since it's host), but the cross-compiler
package also ships a few *target* objects, and for them one would have
to use something like
debarch_to_gnutriplet(get_target_arch()).'-objdump';
That however doesn't seem to exist in libdpkg-perl yet. Also, dpkg-shlibdeps
will probably need to try both, because it can't know which objects are
for the host or for the target.
Otherwise, we for instance get this while building a cross gcc:
dpkg-shlibdeps -Tdebian/gcc-5-x86-64-linux-gnu.substvars
debian/gcc-5-x86-64-linux-gnu/usr/bin/x86_64-linux-gnu-gcc-5
debian/gcc-5-x86-64-linux-gnu/usr/bin/x86_64-linux-gnu-gcov-5
debian/gcc-5-x86-64-linux-gnu/usr/bin/x86_64-linux-gnu-gcov-tool-5
debian/gcc-5-x86-64-linux-gnu/usr/bin/x86_64-linux-gnu-gcc-ar-5
debian/gcc-5-x86-64-linux-gnu/usr/bin/x86_64-linux-gnu-gcc-ranlib-5
debian/gcc-5-x86-64-linux-gnu/usr/bin/x86_64-linux-gnu-gcc-nm-5
debian/gcc-5-x86-64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/5/collect2
debian/gcc-5-x86-64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/5/lto1
debian/gcc-5-x86-64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
debian/gcc-5-x86-64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/5/plugin/libcc1plugin.so.0.0.0
/usr/bin/objdump: debian/libgcc1/lib/x86_64-linux-gnu/libgcc_s.so.1: File
format not recognized
That happens when the build and host are a 32bit architecture which
doesn't have multilib support and target is a 64bit architecture, and
thus its native objdump probably does not understand 64bit binaries.
Samuel
-- System Information:
Debian Release: stretch/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable-debug'), (500, 'oldoldstable'),
(500, 'buildd-unstable'), (500, 'unstable'), (500, 'stable'), (500,
'oldstable'), (1, 'experimental-debug'), (1, 'buildd-experimental'), (1,
'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.4.0 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages dpkg-dev depends on:
ii base-files 9.5
ii binutils 2.26-4
ii bzip2 1.0.6-8
ii libdpkg-perl 1.18.4
ii make 4.1-6
ii patch 2.7.5-1
ii xz-utils 5.1.1alpha+20120614-2.1
Versions of packages dpkg-dev recommends:
ii build-essential 12.2
ii clang-3.5 [c-compiler] 1:3.5.2-3
ii clang-3.6 [c-compiler] 1:3.6.2-3
ii fakeroot 1.20.2-1
ii gcc [c-compiler] 4:5.3.1-1
ii gcc-4.8 [c-compiler] 4.8.5-4
ii gcc-4.9 [c-compiler] 4.9.3-12
ii gcc-5 [c-compiler] 5.3.1-8
ii gcc-6 [c-compiler] 6-20160109-1
ii gnupg 1.4.20-4
ii gnupg2 2.1.11-5
ii gpgv 1.4.20-4
ii libalgorithm-merge-perl 0.08-3
Versions of packages dpkg-dev suggests:
ii debian-keyring 2016.01.20
-- no debconf information
--
Samuel
<D> I hated the Mighty Mouse in the Apple Store every time I played with it. I
hated the Mighty Mouse at work whenever I set up a Mac for somebody.
<D> I decided to give it one last chance when I set up my new Mac
<D> And golly, I like it at home.
<D> Maybe mine is defective in a way that makes it good.