Subject: Crosscompilation Alpha -> i386/ELF w curr -> errors..
To: None <current-users@netbsd.org>
From: Peter B <pb@ludd.luth.se>
List: current-users
Date: 05/25/2002 16:29:05
    Hi!

I'm trying to crosscompile i386 netbsd ELF current kernel on a:
NetBSD speedy 1.5_BETA NetBSD 1.5_BETA (SPEEDY) #6: Sun Dec  6 17:15:55 CET 2020
(an 500 MHz alpha machine)

I downloaded the kernel source from:
  ftp.netbsd.org:/pub/NetBSD/NetBSD-current/tar_files/src/sys.tar.gz

And the crosscompile tools:
  cross-i386-netbsdelf-1.3.0.0.tgz (for 1.5/alpha)

Using:
/usr/sbin/config GENERIC
cd ../compile/GENERIC
./build-script depend

But it won't compile..:
*Initialization*:1: warning: this is the location of the previous definition
*Initialization*:1: warning: `__GNUC__' redefined
*Initialization*:1: warning: this is the location of the previous definition
rm -f param.c
cp ../../../../conf/param.c .
cat ../../../../arch/i386/i386/genassym.cf  |  sh ../../../../kern/genassym.sh /home/tmp/pb/nbsd_i386/cross-i386-netbsdelf-1.3.0.0/bin/i386-netbsdelf-gcc -D__NetBSD__ -ffreestanding  -O2 -Werror -Wall -Wno-main -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-uninitialized  -Di386 -I.  -I../../../../arch -I../../../.. -nostdinc -DLKM -DDIAGNOSTIC -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT   > assym.h.tmp &&  mv -f assym.h.tmp assym.h
*Initialization*:1: warning: `__GNUC__' redefined
*Initialization*:1: warning: this is the location of the previous definition
*** Error code 1

Stop.
Exit 1

Any hints on how to fix it?
I tried the same with 1.5/i386/elf kernel without sucess and more errors.
(My intention is to create custom kernels for a much slower machine..)

    /Peter

Btw, I'm not subscribed to this list.


........................... build-script ...........................
#!/bin/sh

# just helping for cross compilation.

# http://www.netbsd.org/Documentation/cross/#host-system
# http://www.netbsd.org/Ports/
# cross-i386-netbsdelf-1.3.0.0.tgz
# syssrc.tgz

# Like m68k
MACHINE=i386
# Like amiga, atari etc..
MACHINE_ARCH=i386

WHICH=i386-netbsdelf
LOCAL=/home/tmp/pb/nbsd_i386
BINDIR=$LOCAL/cross-i386-netbsdelf-1.3.0.0/i386-netbsdelf/bin
PATH=$PATH:$BINDIR:$LOCAL/cross-i386-netbsdelf-1.3.0.0/i386-netbsdelf/bin:$PATH:
$LOCAL export PATH

GCC_EXEC_PREFIX=$WHICH

MKPROFILE=no export MKPROFILE
MKLINT=no export MKLINT
HOSTED_CC=cc export HOSTED_CC
MAKE=make export MAKE
set -x

# just in case you forgot to specify this when you built gcc...
CFLAGS="-D__NetBSD__"
export MACHINE MACHINE_ARCH CFLAGS
#TARGET=/usr/pkg/cross/bin/sh-netbsdcoff
TARGET=/home/tmp/pb/nbsd_i386/cross-i386-netbsdelf-1.3.0.0/bin/i386-netbsdelf

CPP=`$TARGET-gcc -print-prog-name=cpp`
echo "ARGS:"$*
make AR=$TARGET-ar AS=$TARGET-as CC=$TARGET-gcc LD=$TARGET-ld NM=$TARGET-nm \
               RANLIB=$TARGET-ranlib SIZE=$TARGET-size \
               STRIP=$TARGET-strip OBJCOPY=$TARGET-objcopy \
               CXX=$TARGET-c++ CPP=$CPP \
               FC=$TARGET-f77 ADDR2LINE=$TARGET-addr2line OBJDUMP=$TARGET-objdum
p STRINGS=$TARGET-strings \
               $*
........................... build-script ...........................