stack trace on linux amd64 ?

Iain Buclaw ibuclaw at ubuntu.com
Sat Jun 29 03:18:47 PDT 2013


On 29 June 2013 06:42, deadalnix <deadalnix at gmail.com> wrote:
> On Friday, 28 June 2013 at 20:00:52 UTC, Johannes Pfau wrote:
>>
>> Am Fri, 28 Jun 2013 11:12:25 -0700
>> schrieb Sean Kelly <sean at invisibleduck.org>:
>>
>>> If I remember correctly, the issue there was that the runtime would
>>> need to open the executable or map file and parse it, and it seemed a
>>> lot more straightforward to simply make an API call.  But if you're
>>> inclined to submit a pull request...
>>
>>
>> In the meantime the GCC guys have developed libbacktrace [1] for GCC 4.8
>> which does exactly that: map the executable, parse it and use the dwarf
>> debug info and all that without malloc. We're currently integrating
>> this into GDC [2].
>>
>> Unfortunately it's not as easy to integrate into dmd: It uses libgcc,
>> the libbacktrace library is not installed in the target system (it's
>> only available at gcc build time, we then just link it statically into
>> druntime) and you need a more advanced build system to check for
>> BACKTRACE_SUPPORTED in C headers.
>>
>> [1] https://github.com/mirrors/gcc/tree/master/libbacktrace
>> [2] https://github.com/D-Programming-GDC/GDC/pull/65
>
>
> https://github.com/bombela/backward-cpp
>
> That may be relevant.

If DMD wants to go down the route of pulling in third party dependencies.  :o)


--
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


More information about the Digitalmars-d mailing list