Re: i386 -> x86_64 cross compile failure (binutils bug?)

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

 



Le vendredi 09 décembre 2005 à 20:31 -0500, Lee Revell a écrit :
> On Fri, 2005-12-09 at 23:43 +0100, Xavier Bestel wrote:
> > Le vendredi 09 décembre 2005 à 13:50 -0500, Lee Revell a écrit :
> > > I'm trying to build an x66-64 kernel on a 32 bit system (Ubuntu 5.10).
> > > I added -m64 to the CFLAGS as per the gcc docs. 
> > 
> > Under debian 32bits with 64bits kernel, I just add -m64 somewhere in the
> > main Makefile to rebuild my modules. Didn't try with a whole kernel
> > though.
> 
> The bug seems to be that the kernel build system does not grok biarch
> toolchains - it really insists on a separate toolchain for i386 and
> x86_64 even though the situation can be handled with selective use of
> -m64.  If I jsut add -m64 to everything then it fails when it gets to
> the ia32 stuff.

Yes, you shouldn't compile host executables with -m64, obviously.

--- /usr/src/linux-headers-2.6.14-2/Makefile.old        2005-12-10 21:32:17.000000000 +0100
+++ /usr/src/linux-headers-2.6.14-2/Makefile    2005-11-17 14:26:02.000000000 +0100
@@ -352,7 +352,7 @@

 CFLAGS                 := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
                   -fno-strict-aliasing -fno-common \
-                  -ffreestanding
+                  -ffreestanding -m64
 AFLAGS         := -D__ASSEMBLY__

 export VERSION PATCHLEVEL SUBLEVEL EXTRAVERSION LOCALVERSION KERNELRELEASE \


HTH,
	Xav


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux