Features Download
From: Neil Williams <codehelp <at> debian.org>
Subject: Bug#180128: state of integration of dpkg-cross into dpkg
Newsgroups: gmane.linux.debian.devel.bugs.general
Date: Sunday 22nd June 2008 20:37:10 UTC (over 8 years ago)
tag 180128 - patch

The bulk of the patch is now out of date but rather than spend time
updating the patch, work is ongoing to merge the existing dpkg-cross
package (which includes all the cache values and architecture support)
into dpkg itself, sometime after Lenny.

dpkg-buildpackage -a is working due to other bug fixes in dpkg (>=
1.14.17) and the use of dpkg-cross.

The idea behind this bug is still open but the patch itself is too out
of date to be useful (not the fault of the submitter), other methods are
being followed to achieve the long term goal and a working solution does
already exist.

Far better, in my view, to remove the 'patch' tag from this report, keep
it open as wishlist and I'll merge it with the eventual bug report that
implements an updated patch (arranged with Guillem) that fully merges
dpkg-cross into dpkg and then remove dpkg-cross (and apt-cross) from

The main issue unresolved in this bug report is the mapping
of /usr/lib/foo.so to /usr/arm-linux-gnu/lib/foo.so for packages that do
not use pkg-config (e.g. I'm having upstream problems trying to
configure a package that build-depends on Postgres and ODBC using
pg_config and iodbc-config respectively).

dpkg-cross implements a workaround solution (gccross) but the real fix
is getting exec-prefix support in such config scripts and in other
situations where a package build mistakenly looks in /usr/lib/ during a
cross-build due to some problem with FOO_LIBS settings.

A variation of that bug is internal libraries within packages (either
where the package builds a library and a binary or builds more than one
library and one library depends on at least one of the others). gccross
assists in this situation too but, again, upstream support will be
needed for some of these packages.

Support for removing dpkg-cross entirely is therefore far from complete
(even without considering the other use of dpkg-cross in making the
-cross packages available in /usr/arm-linux-gnu/lib in the first place)
and the patch in this bug report is certainly insufficient (and was when
originally posted IMHO).

More information on dpkg-cross, apt-cross, cross-building in general and
issues relating to how Debian can be made easier to cross-build, see

Just in the last few weeks, it has become possible to track the
cross-builds of packages in Emdebian - 230 source packages are currently
supported with manual builds, maybe 60% will cross-build without
intervention and this proportion will increase over time. (The main
purpose of the autobuilder so far is simply to make the build logs
available and help me find the packages that need fixes.)


Neil Williams 
CD: 16ms