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

Re: crosscompiling - the saga continues



On Sun, 11 Jan 2004 14:17:18 +0100
Xavier Hienne <xhienne@solunix.fr> wrote:

> Anthony Cozzie wrote:
> > Xavier Hienne wrote:
> > 
> >> Anthony Cozzie wrote:
> >>
> >>> Well, once again I have failed to get the 2.4.23 kernel to 
> >>> crosscompile. I went to the alioth http site and specifially 
> >>> downloaded and dpkg --force-all installed the biarch versions of 
> >>> gcc/libc/g++/etc. I think I am doing something stupid since from
> >the >> error messages it looks like gcc isn't even _trying_ to
> >generate >> AMD64 assembly:
> >>
> >>
> >>
> >> Right. What command line did you use ? The Debian amd64 howto
> >suggests :> ARCH="x86_64" make HOSTCC="gcc -m32" bzImage
> > 
> > 
> > 
> > Exactly that.  I even did the bart wrapper.
> 
> First you might check if bart wrapper is actually called when
> compiling your kernel :
> # readlink -f $(which -p gcc)
> /usr/bin/gcc.bart
> 
> Then, supposing you made several attempts to configure and compile
> your kernel, therefore leading to broken dependencies, you might want
> to clean your kernel tree :
> # ARCH="x86_64" make HOSTCC="gcc -m32" dep
> # ARCH="x86_64" make HOSTCC="gcc -m32" clean
> 
> Xavier

Hi, sorry for insisting please,

I have the same problem as Anthony, except I use the 2.4.24-Kernel
sources. After "ARCH="x86_64" make HOSTCC="gcc -m32" bzImage" I ended
up with:
...
/usr/src/linux-2.4.24/include/asm/pci.h:247: warning: integer constant
is too la rge for "long" type
/usr/src/linux-2.4.24/include/asm/pci.h:247: warning: integer constant
is too la rge for "long" type
init/main.c: In function `start_kernel':
init/main.c:388: warning: integer constant is too large for "long" type
init/main.c:388: warning: integer constant is too large for "long" type
init/main.c:388: warning: integer constant is too large for "long" type
init/main.c:388: warning: integer constant is too large for "long" type
init/main.c:388: warning: integer constant is too large for "long" type
init/main.c:388: warning: integer constant is too large for "long" type
{standard input}: Assembler messages:
{standard input}:14: Error: suffix or operands invalid for `movq'
{standard input}:16: Error: suffix or operands invalid for `movq'
{standard input}:22: Error: suffix or operands invalid for `movq'
{standard input}:24: Error: suffix or operands invalid for `movq'
{standard input}:453: Error: Incorrect register `%eax' used with `q'
suffix make: *** [init/main.o] Error 1

I tried...

# readlink -f $(which -p gcc)
 /usr/bin/gcc.bart 
# ARCH="x86_64" make HOSTCC="gcc -m32" dep
# ARCH="x86_64" make HOSTCC="gcc -m32" clean

...but also get the Error.

sources.list contains:
deb ftp://ftp.de.debian.org/debian/ woody main contrib
deb http://debian-amd64.alioth.debian.org/ sarge main

Greetings,
Oliver



Reply to: