Subject: Re: -current build status
To: None <wsoren@gmail.com>
From: Havard Eidnes <he@NetBSD.org>
List: current-users
Date: 01/21/2005 00:22:26
> > They do however say something, and you have not quoted what they
> > say, and it is hard to help without this information.
>
> yes they print out the command and a error code, most likely number 1=
 or 2 =

> but i wasan't able to find any description of them.

I think you're not looking in the right place.  Typically the log
for a botched compile looks something like this:

dependall =3D=3D=3D> games/boggle/boggle
    compile  boggle/bog.o
    compile  boggle/timer.o
       link  boggle/boggle
collect2: ld terminated with signal 11 [Segmentation fault], core dumpe=
d

*** Failed target:  boggle
*** Failed command: /usr/tools/bin/mipsel--netbsd-gcc -Wl,-nostdlib -o =
boggle -Wl,-rpath-link,/usr/dest/evbmips-el/lib:/usr/dest/evbmips-el/us=
r/lib -L/usr/dest/evbmips-el/lib -B/usr/dest/evbmips-el/usr/lib/ -B/usr=
/dest/evbmips-el/usr/lib/ bog.o help.o mach.o prtable.o timer.o word.o =
-lcurses -L/usr/dest/evbmips-el/usr/lib -L/usr/dest/evbmips-el/usr/lib
*** Error code 1

Stop.
nbmake: stopped in /usr/users/he/src/games/boggle/boggle

Here the relevant error message is obviously "collect2: ld terminated
with signal 11", and it turns out that the reason is related to the
change in object format for the MIPS architectures lately.  Doing a
clean build fixed that problem -- this one was done with "build.sh -u",=

so old object files would be attempted used, and in some cases that
caused problems (I did not investigate in detail, since rebuilding from=

scratch cured the build problem).

Another example:

    compile  ofwboot/boot.o
In file included from /usr/users/he/src/sys/arch/sparc/stand/ofwboot/bo=
ot.c:384:/usr/users/he/src/sys/arch/sparc/stand/ofwboot/elfXX_exec.c: I=
n function `elf32_exec':
/usr/users/he/src/sys/arch/sparc/stand/ofwboot/elfXX_exec.c:177: error:=
 parse error before ')' token
In file included from /usr/users/he/src/sys/arch/sparc/stand/ofwboot/bo=
ot.c:388:/usr/users/he/src/sys/arch/sparc/stand/ofwboot/elfXX_exec.c: I=
n function `elf64_exec':
/usr/users/he/src/sys/arch/sparc/stand/ofwboot/elfXX_exec.c:177: error:=
 parse error before ')' token

*** Failed target:  boot.o
*** Failed command: /usr/tools/bin/sparc--netbsdelf-gcc -O2 -ffreestand=
ing -ffreestanding -Wno-main -Werror -D_STANDALONE -DSUN4U -DBOOT_ELF32=
 -DBOOT_ELF64 -DNETBOOT -I/usr/users/he/src/sys/arch/sparc/stand/ofwboo=
t/../../.. -I/usr/users/he/src/sys/arch/sparc/stand/ofwboot/../../../..=
 -I/usr/users/he/src/sys/arch/sparc/stand/ofwboot -I. -DRELOC=3D0x80000=
0 -DSPARC_BOOT_AOUT -DSPARC_BOOT_ELF -DSPARC_BOOT_UFS -DSPARC_BOOT_NFS =
-nostdinc -isystem /usr/dest/sparc/usr/include -c /usr/users/he/src/sys=
/arch/sparc/stand/ofwboot/boot.c
*** Error code 1

Here the error messages are obviously those from the compiler which
point towards a parse error in sparc's ofwboot/boot.c.  The problem in
this case was that someone had left an extra right-parenthesis in an
arithmetic expression (which has since been fixed), and the compiler
complained as it should.


Regards,

- H=E5vard