Re: thoughts on using multi-arch based cross-building
On Mon, Oct 01, 2012 at 01:05:11AM +0100, Wookey wrote:
> > Build-depends installation: apt-get build-dep is fine if you are
> > building an unmodified package from a repo but it's of no use if you
> > have modified the build-dependencies to make them satisfiable.
> Annoying isn't it? This has been irritating me for years.
> /usr/lib/pbuilder-satisfydepends-classic is very useful for the
> native-build case, but I am not aware of a multiarch-aware tool. A
> tool like this should really be in devscripts.
dpkg-dev has dpkg-checkbuilddeps which also has the -a switch for
foreign architectures. But it has two problems:
- the string it outputs contains versions in a format not compatible
with the apt-get command line.
- even with -a it doesnt seem to append architecture qualifiers to
package name (package:arch)
But dpkg-checkbuilddeps could probably easily be used as a template for
a script that is able to feed apt.
> > Does a tool exist that can be told "install the build-depends needed
> > to build the debianised source tree in directory x for architecture
> > y"? if not IMO such a tool (or a new option in an existing tool)
> > needs to be created.
> The dose3 tools can produce the same answers as apt for this problem,
> and could quite easily be modified to look at a local source package
> rather than only at packages files. Johannes Schauer was looking into
> doing this a couple of weeks ago. Any joy Johannes?
When we talked about it, I did some quick hacking and created some
patches for the dose3 parser so that it would also be able to read
debian/control files. When I was in Paris we didnt talk much about dose3
but more about my code. I will ask Pietro about the best way to
integrate this into dose3 on the debian-bootstrap list  today.
> I have just created (following on from PJ McDermott's GSOC work) a
> cross-build-essential source package that makes
> crossbuild-essential-<arch> packages to bring in cross-gcc, cross-g++,
> dpkg-cross (aka cross-support) pkg-config-<triplet>. That in this PPA:
> and needs some dpkg-vendor foo adding to make it right for both debian
> and ubuntu.
And it needs wanna-build fixing (support for architecture qualifiers eg
package:arch) in Debian.