From: Stan Shebs <stan@codesourcery.com>
To: gabe@blackfam.net
Cc: gdb@sourceware.org
Subject: Re: MSVC and DIA
Date: Fri, 22 Aug 2008 20:48:00 -0000 [thread overview]
Message-ID: <48AEF67A.3000401@codesourcery.com> (raw)
In-Reply-To: <8a15eb2b0808220949vffa9aaqe2c4c635857d83d7@mail.gmail.com>
Gabe Black wrote:
> GDB seems like a viable alternative, and all that seems to be missing
> is symbol interpretation. Microsoft provides the Debug Interface
> Access SDK (DIA) which I did not find referenced in any of the mailing
> lists. It is an SDK that allows you to get at any of the debug/symbol
> information in a PDB even if the format of the PDB changes. I would
> like to add PDB symbol support to GDB. I am fairly new to GDB but I
> have been able to implement the remote stub running on the target
> without much trouble. However the challenge lies in adding the symbol
> support. From what I understand, BFD is where I would need to add the
> PDB symbol support. I didn't find much about it in the gdb online
> documentation, both in the user manual and internal documentation.
>
Using somebody else's library can be a pain, because you have to adapt
every mismatched call on the fly, both at the BFD level (which is really
about symbols and blocks of data), and at the GDB level (which then
interprets the blocks of data as debug info). You might find it easier
to simply write a tool that translates a PDB file into an ELF+DWARF
file, then have GDB read that. Since you control every detail of output,
you needn't necessarily use BFD to write the file even; just dump out
canned sequences of bytes for the file as a whole, and similarly for the
DWARF equivalents of PDB constructs. Running GCC on Linux and doing -S
-dA (?) will give you annotated assembly code showing what GDB is going
to expect for different kinds of data, often easier than trying to grok
the whole DWARF spec.
Stan
next prev parent reply other threads:[~2008-08-22 17:25 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-22 20:43 Gabe Black
2008-08-22 20:48 ` Stan Shebs [this message]
2008-08-25 16:41 ` Michael Snyder
2008-08-25 17:29 ` Daniel Jacobowitz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48AEF67A.3000401@codesourcery.com \
--to=stan@codesourcery.com \
--cc=gabe@blackfam.net \
--cc=gdb@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox