reassign 678943 debian-installer 20120508 retitle 678943 debian-installer: FTBFS with foreign libgcc1 installed thanks
Cyril Brulebois <k...@debian.org> (25/06/2012): > Cyril Brulebois <k...@debian.org> (25/06/2012): > > Package: espeakup-udeb > > Version: 1:0.71-8 > > Severity: grave > > Tags: d-i > > Justification: renders package unusable > > > > Hi, > > > > espeakup-udeb can't be installed, due to its dependency on libgcc1: > > | Building dependency tree... > > | […] > > | espeakup-udeb:amd64 Depends on libgcc1 [ amd64 ] < none > ( none ) > > can't be satisfied! > > > > This is on the critical path to d-i beta 1. > > This is apparently only true in a multiarchified environment (here: i386 > as foreign arch on amd64), no issues in a clean sbuild chroot. Lowering > severity for now. Having a multiarchified environment alone isn't exactly what triggers that. Installing a foreign package among a tiny list is what's causing grief. build/util/get-packages does that: | # Prime status file with a few system libraries that don't | # currently have udebs, or which udebs still depend on for various | # reasons. | echo -n > $APTDIR/state/status | # Some archs have libc6, others have libc6.1. libgcc1 is not used | # on all architectures. | for i in libc0.1 libc0.3 libc6 libc6.1 libnewt0.52 libgcc1; do | if dpkg -s $i >/dev/null 2>&1; then | dpkg -s $i | grep -v Depends: >> $APTDIR/state/status | echo >> $APTDIR/state/status | fi | done | APT_GET="$APT_GET -o Dir::State::Status=`pwd`/$APTDIR/state/status" Which works fine if there's no duplicate (e.g. libgcc1:amd64 + libgcc:i386). Otherwise: | $ dpkg -s libgcc1 | dpkg-query: error: --status needs a valid package name but 'libgcc1' is not: ambiguous package name 'libgcc1' with more than one installed instance | | Use --help for help about querying packages. Given the use of “dpkg -s $i >/dev/null 2>&1”, the error is silently ignored, and things go kaboom after that. I'll have to check the recent dpkg changes to see what is the appropriate way to check whether a given package is installed, possibly by qualifying it with the architecture (but then it has to work with pre-multiarch dpkg). I should be submitting a patch tonight. Mraw, KiBi.
signature.asc
Description: Digital signature