Subject: Re: [boost] [explore] Library Proposal: Container Streaming
From: Duncan Smith (duncanphilipnorman_at_[hidden])
Date: 2009-12-03 08:52:13
2009/12/2 OvermindDL1 <overminddl1_at_[hidden]>:
> On Wed, Dec 2, 2009 at 9:02 AM, David Bergman
> I do the same for Visual Studio, I have debugging turned on in both
> Debug and Release, thankfully the debug data is stored in a separate
> file and not in the application file so when I distribute then I do
> not have to include that usually massive debug file. Is there not a
> way to make it an external information file in GCC as in VS?
There is a way. From the manpage for "strip":
---- 1. Link the executable as normal. Assuming that is is called "foo" then... 2. Run "objcopy --only-keep-debug foo foo.dbg" to create a file containing the debugging info. 3. Run "objcopy --strip-debug foo" to create a stripped executable. 4. Run "objcopy --add-gnu-debuglink=foo.dbg foo" to add a link to the debugging info into the stripped executable. Note---the choice of ".dbg" as an extension for the debug info file is arbitrary. Also the "--only-keep-debug" step is optional. You could instead do this: 1. Link the executable as normal. 2. Copy "foo" to "foo.full" 3. Run "strip --strip-debug foo" 4. Run "objcopy --add-gnu-debuglink=foo.full foo" i.e., the file pointed to by the --add-gnu-debuglink can be the full executable. It does not have to be a file created by the --only-keep-debug switch.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk