Re: Bug#688701: dpkg-dev: dpkg-checkbuilddeps fails when run from pdebuild-cross

Neil Williams <[email protected]>
Newsgroups gmane.linux.debian.devel.embedded
Message-ID <[email protected]>
Control: severity -1 minor

On Sun, 14 Oct 2012 13:04:22 +0200
Guillem Jover <[email protected]> wrote:

Thanks Guillem, sorry I didn't get a chance to reassign this bug
earlier. It's clearly not a dpkg problem.

> On Sun, 2012-10-07 at 03:37:09 +0200, Guillem Jover wrote:
> > On Mon, 2012-09-24 at 23:46:10 +0200, Gilles Filippini wrote:
> > > Package: dpkg-dev
> > > Version: 1.16.8
> > > Severity: normal

This is a bug in the cross-building dependency resolution process, yes.
The bug is that there is no such thing as a cross-build dependency
resolver in Debian or Emdebian for use with packages processed by
dpkg-cross.

It has nothing to do with dpkg-dev. It is also not something which the
current cross-building dependency resolution process can actually fix
- the workaround just needs to be documented / forced to avoid
expecting dependencies to be resolvable.

> > > The change introduced to dpkg-checkbuilddeps in release 1.16.2, to check
> > > build-dependencies against the target architecture (-a<arch>) breaks
> > > cross-building with pdebuild-cross: dpkg-checkbuilddeps complains about
> > > missing build-deps while they are correctly pulled by xapt + dpkg-cross.

embuilddeps can (and should) install the dependencies for both
architectures which would allow dpkg-checkbuilddeps to find the right
dependencies for the *native* architecture. dpkg-checkbuilddeps will not
be able to resolve dependencies handled by dpkg-cross and MultiArch
cannot yet deliver a full cross-build support environment in Debian.

> > Well, xapt + dpkg-cross mangle and repack foregin packages to make
> > them installable on the native system, so the fact that this breaks
> > now with multiarch is kind of expected.

Exactly. dpkg-cross and MultiArch are *not* compatible in any way.
MultiArch packages can be *forced* into dpkg-cross compliance but the
two methods are completely independent. For any one package cross-build,
only one method can be used to provide the cross dependencies. MultiArch
isn't ready for cross-compilation in Debian yet, so we're left with
dpkg-cross.

> > > Workaround: add "-d" to DEBBUILDOPTS into
> > > /etc/pdebuild-cross/pdebuild-cross.rc to inhibit dpkg-checkbuilddeps.

Correct.

If this needs to be documented in the manpage or simply enforced for
certain versions of dpkg then that is the only step to be taken for
this bug. No other fix is available in a world where dpkg-cross is
still necessary because dependency resolution based on packages
installed by dpkg-cross is not supported by any tool in Debian or
Emdebian.

> > You should preferibly get packages switched to multiarch. But maybe
> > given that pdebuild-cross seems to be relying currently on xapt +
> > dpkg-cross, then the workaround might need to be applied there for
> > the time being. Otherwise there's really no bug in dpkg.

Correct. 

The solution will be MultiArch.

pdebuild-cross will not support MultiArch, there will be no need for it
once enough -dev packages are properly converted to MultiArch. When
dpkg-cross is finally removed, pdebuild-cross and xapt will be removed
as well.

-- 


Neil Williams
=============
http://www.linux.codehelp.co.uk/
signature.asc (application/pgp-signature, 836 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQIcBAEBCAAGBQJQeqPmAAoJEPFn5DyBQ7aC+XEQAMLX0Pis5DzyBfNHq63iqc5d
O5+vzhM3wI8PdiibN1b3Vp4ahP+snK0LXuYdZkDPamBuoa23PylMEe+NS37zxPgl
8VFlQ6SQA2NgW79xiUH1j4p6v/13eFCwBl5eiZK6qecnrVTsaLtIPNZFwMGsDGdx
GFS9SCgFGIXNZMzX9Lc/GnIoX+L7dbrrWUOliqGhwt6y7oaxOEIVp8wlwzktbBI+
sewCq8jw5b++dyyB6TLvw2egR4ajWr1pSdeZunBcAG+AsVvvmK2sEIr6wK1OEdMP
thZ46ODbWKpQmvUjYrk2LW4fxnsKqNnvI0cTJR80DIYN6TPMQYO8pagW5xs2qvvW
TjsrxoaW4HNeGpwetJtuC1Rwz3qjVLwPgUKh0rO7LLefgbi/EHgRzQrAsL35eBvg
kM+I6lgnx9Ge3q3jpSirZIvYjqaHvYZTlCn5nJUBr6+j+R89QtLfssOgc8+UNoS1
BwoEgtuEOk3Q1oFcCVMmVl+fhxSTAUaSWsG53f/gvOI4wF66BQe8rdzqX3At1cIR
YgID+r5BLDSHO3ohhGnQAK9TOedVeNQ9Azhu+G6RRuXJ20J7nBUEyn29jj+SO2pY
0JBzKiVxLl7AP7I8WzH7ICOFiYIeJAm0vOpIiwUJlqv5e74j2uWYqfnTFVDIMZPe
FdQLjyQnExNiqDgp9XKS
=aQNd
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.