Subject: Semi-successful Feb 23 -current+SMP build
To: None <tech-smp@netbsd.org>
From: Tyler Mitchell <fission@styrophone.net>
List: tech-smp
Date: 04/02/2002 00:01:32
Hello,
With a bit of tweaking, I have successfully built -current using the
February 23 sources (yay!).
Initially, I wanted to use a current -current, but due to the memory
pool changes, the build failed. I tried fixing it myself but without
success; a kernel compiled fine, but didn't make it very far on boot-up
("page trap fault", IIRC). Oh well.
Below I've provided the changes I made for -current to compile. I suspect
that most of these have been addressed since 23 February and won't be
present in the next synchronization (or in later versions of -current)...
usr.bin/elf2ecoff/Makefile:
added .include <bsd.prog.mk> to the top to provide a
clean(dir) target
sys/arch/i386/include/atomic.h:
changed "u_int32_t" to "unsigned long"
(see http://mail-index.netbsd.org/tech-smp/2002/01/26/0000.html)
sys/arch/i386/pci/agp_machdep.c:
added #include <machine/cpu.h> for missing cpu_feature
(not sure why I have to do this; shouldn't this be
included elsewhere?)
sys/arch/i386/stand/Makefile:
commented out SUBDIR+=netboot
This is what the compiler said when trying to build the netboot ROMs:
/usr/src/tools/obj.i386/tools.NetBSD-1.5ZA-i386/bin/i386--netbsdelf-ld -o netboot_3c509.sym -M -e start -Ttext 0x90000 start_rom.o main.o devopen.o conf.o dev_net.o exec.o netif_small.o 3c509.o elink3.o vers.o /usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/i386/libi386.a /usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/sa/libsa.a /usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/z/libz.a /usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/sa/libsa.a /usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/kern/libkern.a /usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/i386/libi386.a /usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/sa/libsa.a >netboot_3c509.list
/usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/sa/libsa.a(globals.o)(.data+0x20): multiple definition of `rootpath'
dev_net.o(.data+0x20): first defined here
/usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/sa/libsa.a(globals.o)(.data+0xa0): multiple definition of `netmask'
dev_net.o(.data+0x0): first defined here
/usr/src/sys/arch/i386/stand/netboot/3c509/obj.i386/lib/sa/libsa.a(globals.o)(.data+0x0): multiple definition of `bcea'
dev_net.o(.data+0xa0): first defined here
*** Error code 1
From a quick peek, it looks like both libsa.a and dev_net are being
included and dev_net is already in libsa. But, I have not been able to
look at it more closely.
In any case, I am super impressed with the speed of this box now; a
dual-500 Celeron (compiled with schnazzy gcc options, no less) is a great
deal faster than its predecessor, a Pentium 75.
Kudos to the NetBSD developers (and testers)!
--
Tyler Mitchell
"Wherever you go, there you are."
-- Douglas Adams