View previous topic :: View next topic |
Author |
Message |
AgentOrange
Joined: 21 Jul 2005 Posts: 61
|
Posted: Mon Sep 26, 2005 1:17 pm Post subject: DBug |
|
|
DBug is a win32 debugger written in D - designed specifically for D applications. This isnt a release yet as its still extremely early in the probject, but I have just placed the current version into source repository.
the code is a bit of a mess right now but the basic debugging system is in place. the debugger consists of several projects that will probably be broken out in the future. here are the primary projects:
dmddebug - a debugging tools library
dwf - D windows framework - this will eventually be a full featured applications framwork for win32 applications
dbug - a win32 debugging gui built from dmddebug + dwf
note - some of this code has come from several locations including digdug, akide, and some of the gui libraries on dsource. i plan on specifying this more clearly after i have cleaned up the codebase a bit.
building:
basically run bld.bat in the src/dbug directory
for some reason, on occasion, dmd.exe never returns and runs endlessly. i usually can do a build -full and it works, other times ive had to comment out various parts of code until it begins working - then i can uncomment the code and its fine. this is quite puzzling and im still trying to figure this out. this is very rare but it has happened more than once.
use:
run dbug.exe and file...open and select an exe
the current keys are:
F5 - run application
F11 - step (not fully working)
you can open the source code from the tree at the left - it will list source files
you can set breakpoints by clicking on the leftmost margin in the source windows - removing breakpoints isnt finished and its getting an exception trying to resume from a breakpoint
but the core debuger message loop and process management seem to be pretty solid.
again this isnt any kind of release yet but I want to make this available for anyone who is interested in this project. |
|
Back to top |
|
|
AgentOrange
Joined: 21 Jul 2005 Posts: 61
|
Posted: Mon Sep 26, 2005 1:26 pm Post subject: |
|
|
some additional notes:
the module 'dbug.debugapi' is designed to be included in debuggee applications to provide debugger text output
a sample file called x.exe (and x.d) is there to test debug output and throwing an exception
im using the tool x2d.exe (x2d.d included) to convert xml to d source code for resources. if you want to modify resources edit the resource.xml file and run 'x2d resource.xml' to generate the file 'resource.d'.
the project 'windows' contains win32 api headers not included in std.c.windows |
|
Back to top |
|
|
ElfQT
Joined: 03 Sep 2005 Posts: 14
|
Posted: Tue Sep 27, 2005 1:07 am Post subject: |
|
|
I've seen and tried several ways to debug D. All missing the ability to debug-watch any compound types, including char[]. I'd like to see a debugger (more, an IDE) capable of this. ElfQT |
|
Back to top |
|
|
AgentOrange
Joined: 21 Jul 2005 Posts: 61
|
Posted: Tue Sep 27, 2005 6:56 am Post subject: |
|
|
thats pretty easy, as ive just gotten into cracking the codeview symbols - the problem is the dbghelp.dll on windows has trouble reading the codeview symbols for D apps - so you have to parse the exe file yourself. i dont think symbols are a problem, i hope to have it in this week. its recovering from breakpoints im getting annoyed about. and i grabbed the latest this morning and dmd is doing its thing where it runs forever and never returns - im trying to figure this out right now. if anyone has any ideas why this happens please let me know. it looks like its getting into some sort of infinite loop while compiling
but yah, being able to access D data structures is one of the central reasons im building this debugger |
|
Back to top |
|
|
ElfQT
Joined: 03 Sep 2005 Posts: 14
|
Posted: Sat Oct 01, 2005 1:04 pm Post subject: |
|
|
Can't agree more with your goal.
If you manage to do it I will bow to your feet.
Others have failed. I have to tell, I simply didn't understand from the beginning (I mean the beggining the point when I came across D), why others haven't made a working and capable debugger for D. I have ranted about, but beed told use printf ... oh, sure.
D seemed something more than an average 'I've made the greatest language' flash, and I thougth and still think that clever/serious/professional ppl are around it, so it seriously needs pro tools also. And I've been amazed why these other ppl not realizing that... :p |
|
Back to top |
|
|
AgentOrange
Joined: 21 Jul 2005 Posts: 61
|
Posted: Sat Oct 01, 2005 2:42 pm Post subject: |
|
|
ElfQT wrote: | Can't agree more with your goal.
If you manage to do it I will bow to your feet.
Others have failed. I have to tell, I simply didn't understand from the beginning (I mean the beggining the point when I came across D), why others haven't made a working and capable debugger for D. I have ranted about, but beed told use printf ... oh, sure.
D seemed something more than an average 'I've made the greatest language' flash, and I thougth and still think that clever/serious/professional ppl are around it, so it seriously needs pro tools also. And I've been amazed why these other ppl not realizing that... :p |
Yeah well, writting a debugger isnt something you do every day. Ive been writing a lot of code for many years and Ive never done anything like this. But , to me, thats what kind of got me excited to figure it out. The problem is theres not a lot of documentation about how to write a debugger. Ive just pretty much tried to get my hands on the source of every debugger I can find. So I can completely understand why people have been avoiding this. and perhaps some people have been able to get professional debuggers to work better than I have. I think if you have the DDK you can write a windbg plugin. But yah its been interesting to say the least. My real problem is I just havent had all the time I had planned up to now, but its getting there... |
|
Back to top |
|
|
qbert
Joined: 30 Mar 2004 Posts: 209 Location: Dallas, Texas
|
Posted: Tue Oct 11, 2005 8:40 am Post subject: |
|
|
Is thier a zipped 'download' people can try w/o having to download and build the source ? I tried running dbug.exe alone I get access violation.
Charlie |
|
Back to top |
|
|
AgentOrange
Joined: 21 Jul 2005 Posts: 61
|
Posted: Tue Oct 11, 2005 12:28 pm Post subject: |
|
|
sorry im not releasing anything yet because theres no real point yet unless someone wants to get their hands dirty. Im pretty much just supplying access in case anyone wants to help, but it will be a little while until I have a release. |
|
Back to top |
|
|
|