[dmd-beta] dmd 1.059 and 2.044 beta

Jason House jason.james.house at gmail.com
Sun May 2 12:33:04 PDT 2010


Maybe I'm just cursed with getting gdb to work with D :(  I've tried the
plain vanilla gdb from my fresh install of ubuntu 10.04 as well as compiling
the latest gdb from source.  I believe the basic things I'm doing should
work with the plain vanilla gdb.

$ ls *.d hb/*.d hb/*/*.d | wc -l
16

$ dmd -gc -unittest -version=test *.d hb/*.d hb/*/*.d tango/core/Atomic.d
tango/core/Traits.d -ofhousebot-test

$ gdb ./housebot-test
GNU gdb (GDB) 7.1-ubuntu
<snip>
Reading symbols from /home/jhouse/go/housebot/0.8/housebot-test...done.
(gdb) break _Dmain
Dwarf Error: Cannot find DIE at 0x0 referenced from DIE at 0x3f83 [in module
/home/jhouse/go/housebot/0.8/housebot-test]
(gdb) break main
Breakpoint 1 at 0x805d097
(gdb) run
Starting program: /home/jhouse/go/housebot/0.8/housebot-test
[Thread debugging using libthread_db enabled]

Breakpoint 1, 0x0805d097 in main ()
(gdb) list
Dwarf Error: Cannot find DIE at 0x0 referenced from DIE at 0x3f83 [in module
/home/jhouse/go/housebot/0.8/housebot-test]
<snip>

$ latest_gdb_source/gdb/gdb ./housebot-test
GNU gdb (GDB) 7.1.50.20100502-cvs
<snip>
Reading symbols from
/home/jhouse/go/housebot/0.8/housebot-test...Segmentation fault

$ gdb latest_gdb_source/gdb/gdb
GNU gdb (GDB) 7.1.50.20100502-cvs
<snip>
Reading symbols from /home/jhouse/go/housebot/0.8/housebot-test...
Program received signal SIGSEGV, Segmentation fault.
0x002a0d08 in ?? () from /lib/tls/i686/cmov/libc.so.6
(gdb)


On Sat, May 1, 2010 at 11:27 AM, Robert Clipsham
<robert at octarineparrot.com>wrote:

> On 01/05/10 16:17, Jason House wrote:
>
>> Which debugger is best to use with Ubuntu (and dmd)? I plan a fresh
>> install of 10.04 this weekend.
>>
>
> If you don't mind compiling from source then I'd use gdb 7.1 with the
> patches from:
>
>
> http://sourceware.org/git/?p=gdb.git;a=patch;h=870850ddab624f9d0111a4a0733cf7f5edf9bf91;hp=5f38666e4d2282a3407a0266a889a5be14ad5c74
>
> (Scroll down to the line "diff --git a/gdb/ChangeLog b/gdb/ChangeLog", the
> diff is from there down)
>
> This way you get a stable version of gdb with the D patches applied.
> Alternatively you could use the latest version from git/cvs. The final
> option is to use plain old gdb from the ubuntu repos. As long as you don't
> want to print strings it'll be fine :)
>
> I seem to recall there was a dgdb package around somewhere for ubuntu, I
> don't know where though, and it's probably out of date.
>
> Of course which ever route you take make sure you compile with -gc, as -g
> isn't supported, even with the D patches for gdb.
>
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/dmd-beta/attachments/20100502/56402138/attachment.html>


More information about the dmd-beta mailing list