Le samedi 19 janvier à 07h 48mn 18s (+0100), Cyril Brulebois a écrit : > Hi JH, > > jhcha54008 <jhcha54...@free.fr> (2019-01-17): > > Package: choose-mirror > > Version: 2.96 > > Severity: wishlist > > Tags: patch > > > > Dear Maintainer, > > > > Crossbuilding choose-mirror with dpkg-buildpackage -a .... results in > > an error at the present time. > > > > It succeeds with the patch below. > > I'd be happy to get a log for the failure and/or a complete description > on how to reproduce it; a description of why the change is needed / how > it works would also be welcome. > > (No objections on the patch on its own, but not everyone is uptospeed > regarding crossbuilding, so some details would be appreciated.) > > > Thanks, > -- > Cyril Brulebois (k...@debian.org) <https://debamax.com/> > D-I release manager -- Release team member -- Freelance Consultant
Hi, Thank your for your answer. Here is a revised version of the bug report. Thanks in advance for your advice if there is a better way. * Why cross-compile choose-mirror ? The official debian-installer and udeb packages are built on native buildds. It would be handy to build on amd64 for testing purpose though - particularly when targeting some exotic architectures which might not exist yet for real (e.g. riscvos. See [1]) It should be possible to cross-compile choose-mirror : debian/rules defines the exported variables DEB_HOST_ARCH and CROSS. * What is the actual problem with choose-mirror ? $ dpkg-buildpackage -a alpha -uc -us [ ... ] dpkg-checkbuilddeps: error: Unmet build dependencies: isoquery [ ... ] There is no 'Multi-Arch:' field in the debian/control file of isoquery : isoquery:amd64 installed doesn't meet the build dependency requirements of choose-mirror for alpha. * How to reproduce the bug ? Please find the details below with a minimal setup on amd64 targeting alpha. I hope it will help ! Regards, JH Chatenet [1] : http://lists.debian.org/debian-boot/2019/01/msg00044.html 1/ create a sid chroot with debootstrap --variant=buildd and an user 'me' : debootstrap --variant=buildd sid mychroot export LANG=C mount -t proc proc mychroot/proc chroot mychroot mount -t sysfs sysfs sys mount -t devpts devpts dev/pts -o gid=5,mode=620 apt-get update && apt-get upgrade adduser me 2/ install the toolchain apt-get install gcc-alpha-linux-gnu 3/ install the build dependencies (amd64 part) apt-get --no-install-recommends install fakeroot apt-get --no-install-recommends install debhelper debhelper wget po-debconf locales iso-codes isoquery 4/ install the build dependencies (alpha part) apt-get install debian-ports-archive-keyring cat > /etc/apt/sources.list.d/alpha.list <<EOF deb [ arch=alpha ] http://deb.debian.org/debian-ports unstable main deb [ arch=alpha ] http://deb.debian.org/debian-ports unreleased main EOF dpkg --add-architecture alpha apt-get update apt-get --no-install-recommends install libc6.1:alpha apt-get --no-install-recommends install libdebconfclient0-dev:alpha libdebian-installer4-dev:alpha 5/ cross-compile choose-mirror cat > /etc/apt/sources.list.d/source.list <<EOF deb-src http://deb.debian.org/debian unstable main EOF apt-get update chmod o+r /etc/apt/sources.list.d/source.list su - me $ apt-get source choose-mirror $ cd choose-mirror-2.96 $ dpkg-buildpackage -a alpha -uc -us dpkg-buildpackage: info: source package choose-mirror dpkg-buildpackage: info: source version 2.96 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Cyril Brulebois <k...@debian.org> dpkg-architecture: warning: specified GNU system type alpha-linux-gnu does not match CC system type x86_64-linux-gnu, try setting a correct CC environment variable dpkg-buildpackage: info: host architecture alpha dpkg-source --before-build . dpkg-checkbuilddeps: error: Unmet build dependencies: isoquery dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting dpkg-buildpackage: warning: (Use -d flag to override.) With the proposed patch applied : $ dpkg-buildpackage -a alpha -uc -us [ ... ] dpkg-deb: building package 'choose-mirror' in 'debian/.debhelper/scratch-space/build-choose-mirror/choose-mirror_2.96_all.deb'. dpkg-deb: building package 'choose-mirror-bin' in 'debian/.debhelper/scratch-space/build-choose-mirror-bin/choose-mirror-bin_2.96_alpha.deb'. Renaming choose-mirror_2.96_all.deb to choose-mirror_2.96_all.udeb Renaming choose-mirror-bin_2.96_alpha.deb to choose-mirror-bin_2.96_alpha.udeb dpkg-genbuildinfo dpkg-genchanges >../choose-mirror_2.96_alpha.changes dpkg-genchanges: info: including full source code in upload dpkg-source --after-build . dpkg-buildpackage: info: source-only upload: Debian-native package $ echo $? 0