From owner-freebsd-questions Mon Jul 21 03:24:07 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id DAA05103 for questions-outgoing; Mon, 21 Jul 1997 03:24:07 -0700 (PDT) Received: from tyree.iii.co.uk (tyree.iii.co.uk [193.117.77.66]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id DAA05098 for ; Mon, 21 Jul 1997 03:24:02 -0700 (PDT) Received: (from nik@localhost) by tyree.iii.co.uk (8.8.4/8.8.4) id LAA13561; Mon, 21 Jul 1997 11:18:45 +0100 (BST) Message-ID: <19970721111844.27591@iii.co.uk> Date: Mon, 21 Jul 1997 11:18:44 +0100 From: Nik Clayton To: Donald Burr Cc: FreeBSD Questions Subject: Re: "make" the "world" a better place -- how? References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.76e In-Reply-To: ; from Donald Burr on Mon, Jul 21, 1997 at 02:48:49AM -0700 Organization: interactive investor Sender: owner-freebsd-questions@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Mon, Jul 21, 1997 at 02:48:49AM -0700, Donald Burr wrote: > 1. How much disk space do I need to run "make world"? (I assume that I > need this space in the same partition as the /usr/src stuff, plus some > room in the various /tmp directories to hold compiler output, > correct?) Nope. The compilation happens in (by default) /usr/obj, although you can change it. A big win if you have multiple disks is to put /usr/src on one disk and /usr/obj on another[1]. Not sure how much disk space you need. Probably as much again as the source code takes up, although that's only a rough estimate. > 2. Is "make world" the only command I need to run? (i.e. do I have to, > for example, run "make depend" before doing it, and/or "make install" > afterwards?) 'make world' will *generally* do everything you need to build and install a working system. There are occasions when you might need to make another target first. There's no hard and fast rule for when this might be. Typically, a heads-up will appear in the -current mailing list if this is the case. For example, recently it's been necessary to run 'make includes' before 'make world' when compiling -current. If you do 'make world' and it doesn't complete, check the mailing lists, check the mailing list archives, and if that doesn't solve the problem, post to -current (or -stable) or whatever, and describe the problem. > 3. Will "make world" overwrite my configuration files (I have a lot of > them, like /etc/sendmail.cf, /etc/amd.map, /etc/rc.local, etc.)? Need > I back them up before running it? 'make world' won't touch /etc. You need to 'upgrade /etc by hand'. Check out http://www.freebsd.org/tutorials/upgrade/upgrade.html which is a detailed tutorial on how to do this. > 4. Last, if I cannot or do not want to run a full "make world" for > various reasons (not enough disk space, etc.), can I make a "subset" > of "make world"? For example, if I made changes to the C library > (libc), can I just rebuild and install that piece only? Or if I make > changes to the "sendmail" command only? IF so, what are the commands > to do this "sub-build"? Generally, (and to use sendmail as an example) # cd /usr/src/usr.sbin/sendmail # make all # make install If you look at the top level Makefile in /usr/src you'll see it recursively calls other Makefiles with some standard targets. You can just 'cd' into these directories and call these targets yourself. Hope that helps, N [1] At least, I would expect it to be a win. I've never benchmarked the two approaches to quantify the difference. I welcome comments from people who have done this. -- --+==[ Nik Clayton is Just Another Perl Hacker at Interactive Investor ]==+-- Pithy quotes suck.