6.0R GENERIC makeoptions DEBUG=-g [Slightly OT]
e.schuele at computer.org
Mon Nov 14 17:19:09 GMT 2005
Robert Watson wrote:
> On Mon, 14 Nov 2005, Simon Ironside wrote:
>> /sys/i386/conf/GENERIC has this line uncommented - is this on purpose?
>> I commented it out before building a new kernel.
>> makeoptions DEBUG=-g
> This was by accident, but actually isn't a bad idea. We discovered the
> problem at the last minute, after the 6.0-R builds had completed, and as
> they were rsyncing to mirrors. After thinking about it for a few
> minutes, we decided that actually, it has some nice benefits that made
> it worth not rebuilding and re-mirroring. If we were earlier in the
> release cycle, we might have changed the setting, however.
> We identified a few specific upsides and downsides:
> Good: We now have debugging symbols easily available and widely
> accessible for the GENERIC kernel shipped with the release. This makes
> it much easier for developers to debug problems using that kernel, as we
> no longer need to ask end-users to build a kernel with debugging
> symbols, etc, in order to debug a problem. Especially for a .0 release,
> this is a very useful, and has presented a problem in previous releases.
> Bad: Kernel build times are now significantly slower, and required space
> to build a kernel significantly larger by default.
> We'll see how it settles out -- CPUs are a lot larger, and disks a lot
> bigger than they used to be. The kernel is stripped of debugging
> symbols before it is installed, so this is only potentially a problem on
> systems that already have enough space to hold source, builds, etc, and
> doesn't affect systems where the kernel is installed but not built.
> I.e., this doesn't affect the footprint for embedded systems, or systems
> where a kernel is built centrally and then distributed.
> My recommendation would be to leave -g in unless you know that the added
> build time and disk space for the build process will be a problem for
If I were to decide to remove this, and I have a small config file which
includes GENERIC, what directive would I use. For example, with a
device I wish to remove I can use nodevice... for options, nooptions.
Also... I once saw someone ask this and never saw a reply....
Where can I find documentation of the above mentioned mechanism?
> Hopefully you don't ever run into any problems requiring debug
> symbols, but if you do it will probably save you some time and hassle,
> especially if it's a problem that occurs once every six months, in which
> case rebooting with a kernel with known symbol layout will mean waiting
> six months to debug the problem. :-)
> Robert N M Watson
> freebsd-questions at freebsd.org mailing list
> To unsubscribe, send any mail to
> "freebsd-questions-unsubscribe at freebsd.org"
More information about the freebsd-questions