[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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 [1] 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:
> https://launchpad.net/~linaro-foundations/+archive/cross-build-tools
> 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.

cheers, josch

[1] http://lists.mister-muffin.de/cgi-bin/mailman/listinfo/debian-bootstrap

Reply to: