Hello, > Do not cross compile for i386 an amd64 or vice versa on new kernel > versions, since i386 and mad64 have been merged into a common x86 > architecture. Since this is not a cross compile at all, things get a > little confused.
I am trying to build i386 packages of i386 kernels on my (very faster) amd64 machine. The ARCH variable passed to `make' still needs to be set to "i386". What is the right thing to do then? According to the man page, and the available options, --arch seems to be the right thing to use. So I use as a command line: CONCURRENCY_LEVEL=4 make-kpkg --rootcmd fakeroot --revision foo.12 \ --arch i386 --cross-compile - kernel-image Using kernel-package 12.014 (it is a debian sid system), it still ends up building an amd64 package. I can fix the problem for myself by manually setting DEB_HOST_ARCH to i386 in /usr/share/kernel-package/ruleset/common/archvars.mk Ugly hack, much. I tried playing with the snippet of code: ifdef KPKG_ARCH ifeq ($(strip $(MAKING_VIRTUAL_IMAGE)),) ifneq ($(CROSS_COMPILE),-) ha:=-a$(KPKG_ARCH) endif endif endif If it wasn't for the "ifneq ($(CROSS_COMPILE),-)" test, the right value would be set for DEB_HOST_ARCH; however I assume that this test exists for a reason, and if I by-pass it, wrong values are apparently set for the other variables, and I get a bunch of errors like: dpkg-architecture: warning: Specified GNU system type i486-linux-gnu does not match gcc system type x86_64-linux-gnu. So, is there an extra bit of logic missing there? Or am I simply doing it wrong? Regards, -- Pierre Ynard "Une âme dans un corps, c'est comme un dessin sur une feuille de papier." -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org