This is the mail archive of the
cygwin
mailing list for the Cygwin project.
FW: Unfolding the stack
- From: "Michel Bardiaux" <MBardiaux at mediaxim dot be>
- To: <cygwin at cygwin dot com>
- Date: Mon, 12 Mar 2012 16:20:39 +0100
- Subject: FW: Unfolding the stack
[snip]
> This is hard in C, and harder in code compiled by gcc [snip]
I know that, and am willing to accept the risk since any info is better
than none. I just wish for a more efficient mechanism than I am now
using.
> If you're using C++, [snip]
Nope.
> Alternatively, you could compile with -g and try to traverse the debug
info tables gdb uses to work > around everything nasty gcc does, but
there's no clean API there that I know of.
Since cygwin_stackdump does not dare to tread there...
> Out of curiosity, what is your library currently using to generate
backtraces?
Well you just snipped it: pipe/fork/dup to catch the stderr of
cygwin_stackdump called in the forked process.
> There's a backtrace facility in glibc (man backtrace), but it's got a
> long list of caveats as well, > including death by
-fomit-frame-pointer (it doesn't use any debug/unwind info emitted by
the compiler).
In what package? I have cygwin basics + gcc installed, and no backtrace
in any .h.
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple