Subject: Re: NetBSD/alpha installboot
To: None <port-i386@netbsd.org>
From: Ray Phillips <r.phillips@mailbox.uq.edu.au>
List: port-i386
Date: 07/31/2001 17:39:53
>> I want to make an image on a NetBSD/i386 machine for a CD which will boot
>> an Alpha, so I need to build the NetBSD/alpha version of installboot. I've
>> extracted these two files
Thanks for replying Manuel and Dan.
Yes, it turned out that I needed more of the source tree from syssrc.tgz --
both usr/src/sys/arch/alpha/include and usr/src/sys/arch/alpha/stand. It
was also necessary to use /usr/bin/make instead of Gnu make version 3.79.1
which is what I was doing yesterday :( I'd installed it in
/usr/local/bin/make and hadn't encountered problems using it previously.
Running make from within usr/src/sys/arch/alpha/stand/installboot was
enough to build just installboot.
This raises two points:
1) Which version of make comes with NetBSD 1.5 and how does it differ from Gnu
make?
2) (Sorry about this one, it's going to reveal a big gap in my knowldege of C.)
I tried running running /usr/bin/make from within
usr/src/sys/arch/alpha/stand/installboot with just the
usr/src/sys/arch/alpha/stand part of the source tree which resulted in:
% make
cc -O2 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
-Wno-unin
itialized -Werror
-I/usr/home/ray/installers/NetBSD/1.5/i386/1/usr/src/sys/arc
h/alpha/stand/installboot/../.. -c installboot.c
installboot.c:65: include/disklabel.h: No such file or directory
*** Error code 1
Stop.
Line 65 of installboot.c is
#include <include/disklabel.h> /* defeat <machine/disklabel.h>, force
alpha */
which apparently tells the C compiler to ignore the three disklabel.h files
present under /usr/include, viz.
/usr/include/dev/sun/disklabel.h
/usr/include/sys/disklabel.h
/usr/include/i386/disklabel.h
Does that #include statement tell the preprocessor to move upwards from
the current directory until you come to a directory containing a directory
named 'include' which contains the file 'disklabel.h'? How would that
compare to the line
#include <disklabel.h>
Ray