Subject: Re: miniroot.fs too small
To: Greywolf <greywolf@starwolf.com>
From: Luke Mewburn <lukem@wasabisystems.com>
List: port-sparc
Date: 06/09/2002 02:46:12
On Fri, Jun 07, 2002 at 11:03:19PM -0700, Greywolf wrote:
| # I'd be curious to know what you do on your systems to break the builds
| # in so many ways, when in the majority of the cases it's been extremely
| # difficult to reproduce your problems... :-/
|
| I understand your frustration at not being able to reproduce the
| problem, from a sysadmin's point of view. I've run into it before, too,
| so I'm sorry for being such a problem child.
There's something strange about your system.
I just cross build a sparc release (from i386) without hassle.
My cross-built kernels are 1/2 the size of your kernels.
As an experiment, I tried to reproduce the problems.
On a 1.6_BETA1 i386 system with a "fresh" netbsd-1-6 source tree mounted
read-only on /usr/src, I did
# /etc/mk.conf /etc/mk.conf.off
% env -i tcsh
# to clear the environment
% set path=(/bin /usr/bin)
% set term=xterm
% set home=/home/lukem
# set some sane defaults
% cd /usr/src
% ./build.sh -m sparc -O /var/scratch/obj.sparc -d -D \
/var/scratch/obj.sparc/dest -R /var/scratch/obj.sparc/release -U
It failed partway thru due to an unreleated "out of date source
error" (twe.c failed to build in one of the kernels), so I cvs updated
that, and did:
./build.sh -m sparc -O /var/scratch/obj.sparc -d -D \
/var/scratch/obj.sparc/dest -R /var/scratch/obj.sparc/release -U -u
(the extra -u to prevent cleandir) and the release completed successfully.
I.e, I had fresh source, mounted readonly. I am building a release
unprivileged. I don't have mk.conf or any environment variables set.
"Things work"
| Now unless you can tell me that "tool" was ill-thought-out (clue:
| ./build.sh -m sparc done without "tool -m sparc" DOES NOT BUILD FOR ME,
| because I don't feel like permanently embedding the goddamn build bin
| in my $PATH for every arch i might want to build), I'm at a total loss
| for WHY this thing is blowing up on me, and more so as to why it works
| for you.
There's no need to add the various tooldirs to the path. You can also
share tooldirs between different target builds. So, in your system
you could add
-T /build/tools
and then just add /build/tools/bin to your path, or run
/build/tools/bin/nbmake-$MACHINE directly, or just use build.sh and
don't add it at all.
| [and I know someone's going to take umbrage at my frustration. Deal.
| I am.]
Well, we could take umbrage. Or we could just say "we spent a lot of
time trying to debug & reproduce this, had no luck, lost interest..."