Subject: Mysterious failure of Kernal Build
To: None <tech-kern@netbsd.org>
From: Mykal Funk <mykal@sccoast.net>
List: tech-kern
Date: 01/23/2004 01:13:45
I am new to NetBSD and Open Source software in general. In order to
get my i486 to initialize its network card, i have to rebuild its
kernel. So i could learn a bit about the system, i decided to compile
the kernels on both of my machines. The i486 compiled fine and i got
my network card working. However, the other computer panicked and
printed some strange gibberish to the screen.

The machine is a Compaq LTE 5280 laptopp using 32MB core with
120MHtz Pentium. The error messages are as follows:

> /var/tmp/ccpvdBIN.s: Assembler messages:
> /var/tmp/ccpvdBIN.s:107: Warning: indirect lcall without `*'

followed sometime later by:

>
cc -ffreestanding  -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpoi
nter
> -arith -Wmissing-prototypes -Wstrict-prototypes -Wno-uninitialized -I../..
/../..
>
/../../lib/libkern/arch/i386 -Di386 -I../../. -I../../../../../../arch -I../
../.
> ./../../.. -nostdinc -DLKM -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT    -c
/usr/src/
>
sys/arch/i386/compile/COMPAQ_LTE/lib/kern/../../../../../../lib/libkern/pmat
ch.c
> building standard kern library
> sort: cannot link /tmp/_reference_.15634a: output left in
/tmp/_reference_.15634
> a15640a: Operation not supported
> sort: cannot link /tmp/_symbol_.15635a: output left in
/tmp/_symbol_.15635a15641
> a: Operation not supported
> join: /tmp/_reference_.15634a: No such file or directory
> building GDB initialization file
> rm -f .gdbinit
> echo "source ../../../../gdbscripts/bdump" >> .gdbinit
> echo "source ../../../../gdbscripts/kdump" >> .gdbinit
> echo "source ../../../../gdbscripts/msgbuf" >> .gdbinit
> echo "source ../../../../gdbscripts/pgrpdump" >> .gdbinit
> echo "source ../../../../gdbscripts/stats" >> .gdbinit
> echo "source ../../../../gdbscripts/vchain" >> .gdbinit
> echo "source ../../../../gdbscripts/vdump" >> .gdbinit
> echo "source ../../../../gdbscripts/xps" >> .gdbinit
> sh ../../../../conf/newvers.sh
>
cc  -ffreestanding  -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpo
inte
>
-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-uninitialized  -Di386 -
I.
>  -I../../../../arch -I../../../.. -nostdinc -DLKM -DMAXUSERS=32 -D_KERNEL 
-D_KER
> NEL_OPT  -c vers.c
> ld -T ../../../../arch/i386/conf/kern.ldscript -Ttext c0100000 -e
start -X -o ne
> tbsd ${SYSTEM_OBJ} vers.o
> fd.o: In function `fdstrategy':
> fd.o(.text+0x451): undefined reference to `fd_cd'
> fd.o(.text+0x458): undefined reference to `fd_cd'
> fd.o: In function `fdopen':
> fd.o(.text+0x9b6): undefined reference to `fd_cd'
> fd.o(.text+0x9bd): undefined reference to `fd_cd'
> fd.o: In function `fdclose':
> fd.o(.text+0xa99): undefined reference to `fd_cd'
> fd.o(.text+0xaa0): more undefined references to `fd_cd' follow
> *** Error code 1
> Stop.
> make: stopped in /usr/src/sys/arch/i386/compile/COMPAQ_LTE
> #

The first set i believe i can safely ignore. The same set showed up
on my other machine yet didn't affect the boot process or its efficiency
or function. At least that i can see. If someone out there would be kind
enough to explain this to me, i would be very thankful. And yes, i have
RTMed.

Thanks in advance,
mykalFunk