This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Snapshots are now stripped again

I've just reinstated the stripping of snapshots so that when you
download a compressed DLL (either directly or via cygwin-inst-*.tar.bz2)
it will not contain debug info.  The debug info is now available as a
separate compressed '.dbg' file.  To use the .dbg file for debugging,
you just have to uncompress it and move it to /bin, calling it
"cygwin1.dbg".  gdb will then use this file automatically when debugging

I'll be making the .dbg file available when I make the formal cygwin
release also, either in the source tarball or as a separate package.

The split of debug information into a separate file reflects a change to
the way the Cygwin DLL is now generated by the makefile in
winsup/cygwin.  Debug information will no longer be part of the DLL
itself, but will, instead, only be included in the .dbg file.  There is
a technical reason which prompted this change which I won't go into
here, but I think the minor inconvenience of keeping the debug info in a
separate place outweighs the benefits of keeping the debug info out of
the DLL and making it available as a separate download.

The splitting of the debug information into a new file is something that
I've wanted to do for a long time but problems with the standard
binutils way of accomplishing this task had proven to be daunting for PE
format executables.  I took some time today to try to understand what
was going wrong and wrote a script to fix up the dll so that information
about cygwin1.dbg was included in cygwin1.dll in a way that does not
cause cygwin1.dll to be an invalid binary -- which was the problem

Eventually, I will fix binutils so that this workaround is no longer
necessary and, then, it will be possible to create separate debug files
for any binary, without the need for my fixup.

For those curious about how the standard GNU way of splitting debug
information out of the binary, check out the objcopy man page and look
for --only-keep-debug.


Unsubscribe info:
Problem reports:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]