Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Jan 1996 15:32:31 -0500 (EST)
From:      Chuck Robey <chuckr@glue.umd.edu>
To:        Alexei Nikolaevich Romanov <alexei@loach.org>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Small, tiny question.
Message-ID:  <Pine.SUN.3.91.960104151840.6941B-100000@cappuccino.eng.umd.edu>
In-Reply-To: <199601040931.JAA07117@albion.loach.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 4 Jan 1996, Alexei Nikolaevich Romanov wrote:

> My english isn't so good;  I meant to ask:  How do you go about building 
> the entire _OS_;  i.e., the shared libraries, and the utilities.  THe kernel
> build is no problem whatsoever.  I meant to specify that I meant about the
> source tree for everything else. (As I'm interested in recompiling them all,
> and practising, before bringing a system up to date with sup, for 
> experimentation)
> 
> 	Apologies for the confusion--

On rereading, I got you wrong, no apologies needed.  I can tell you how 
to do the make world here, but you have to understand that sometimes 
parts of the tree on dependent on other parts already being at a 
particular level.  Most of such things are put in a special 'tools' list, 
so they get built and installed first, but there are the occaisonal 
mistakes.  What I am trying to get at is, if you are a complete newbie to 
the C language, compiling, linking, and using make, well, you probably 
don't want to try this.  You could get yourself in a bad situation, even 
disabling parts of your OS.  Doing the make worlds is for folks willing 
to take the responsibility for a certain possibility of disaster.

That's not to say it's likely, nor are you without help.  the 
FreeBSD-current list helps folks doing make worlds of current sources, 
and you can get help here on doing builds of other versions.  I just want 
you to be aware, you're taking chances if you're not confident of your 
hacking skills.

That past, I'll explain the way I do it.  The sources are in /usr/src, so 
I cd into that.  I usually do this in single user make (after I do a 
'shutdown now' and am in a root shell).  This isn't necessary, but it 
makes me feel more comfortable about possibly using utils that are going 
to be changing.  Then I just issue the command:

make world -DNOSECURE -DNOPROFILE

The reason I include the -DNOSECURE is because I have a dinky little two 
machine network, and I don't need the added security of kerberos.  The 
reason I put in the -DNOPROFILE is because I don't normally play around 
with profiled libraries, and this saves a lot of disk space.  You don't 
need to put in either of the -D flags yourself, but you had better know 
how to use kernberos _before_ you do a make world with it enabled: you 
could very easily find yourself locked out of your own machine.

OK, the make world will run a long time.  On my 486-66 it takes maybe 
10-12 hours.  When it is finished, everything in your OS _excepting_ your 
kernel is new.  AT this point I normally make a new kernel, install it, 
and do a reboot.

Good luck!

============================================================================
Chuck Robey chuckr@eng.umd.edu -- I run FreeBSD on n3lxx and Journey2
---------------------------------------------------------------------------
The Dilbert Zone is Dilbert's new WWW home! The area
features never-before-seen original sketches of Dilbert, a photo tour
of Scott Adams' studio, Dilbert Trivia and memorabilia, high
school photos and much more!:
<URL:http://www.unitedmedia.com/comics/dilbert/>;




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SUN.3.91.960104151840.6941B-100000>