[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Automatic debug symbol generation

From: Bob Rossi
Subject: Re: Automatic debug symbol generation
Date: Thu, 23 Apr 2009 08:51:11 -0400
User-agent: Mutt/1.5.17+20080114 (2008-01-14)

On Tue, Apr 21, 2009 at 11:01:20PM -0700, Jason Spence wrote:
> On Wed, Apr 22, 2009 at 07:33:47AM +0200, Ralf Wildenhues wrote: 
> > Hello,

First off, I want to say thank you, for bringing this feature to my
attention. This could be an excellent addition to our build system.

> > * JRS wrote on Wed, Apr 22, 2009 at 07:02:55AM CEST:
> > > I was setting up build infrastructure once again when it occurred to
> > > me, hmm, wouldn't it be nice if automake had default targets for
> > > installing symbols?
> > > 
> > > For example, make install-syms could do objcopy --only-keep-debug on
> > > the binaries and libraries, and put the .debug files in
> > > /usr/lib/debug.

It would be convienent if you could store the debug files at a user 
specified location. In my case, I would prefer to store the .dbg files
right next to the executables in the install tree.

> > What's the advantage over just installing binaries into $(bindir)
> > without stripping them?  Non-brain-damaged systems won't load them from
> > the file anyway for normal execution.
> I have two uses cases in mind:
> 1) Embedded systems development.  Sometimes your dev board is the same
> as your shipping board, and the storage is limited and not
> replaceable.  Some of these devices don't have network interfaces for
> NFS either.  
> 2) For groups that release their own packages, shipping the debug
> symbols unconditionally in every download can translate into a
> significant amount of bandwidth.  If the package is mainly used by
> users who don't know which end of the debugger is which, most of those
> downloaded symbol bits aren't going to get used and it might be more
> cost effective to just provide those packages separately.
> The counterargument to 2) is that whoever's on package duty should
> separate the debug information themselves, but then you have all the
> packagers reinventing the wheel instead of factoring out the necessary
> logic into autotools.
> In particular, I'm thinking of buildroot.  I think adding automatic
> debug symbol generation to all the packages would be a large patch,
> whereas adding that feature via autotools instead would result in a
> smaller patch.

I can think of another use case, which would be excellent for me.

On mingw/msys the executables with debug grow to be huge (10x the size).
Before stripping, my bin dir is 920 megs. After stripping it's 72 megs.
The mere size of the executables cause windows to load them rather slow.
If you have to start a program many times, as I do, it's noticable.

I don't debug often, but, if I need to, I'd rather not do an entirely
new build, so I stick with the bloated debug build.

Bob Rossi

reply via email to

[Prev in Thread] Current Thread [Next in Thread]