View mode: basic / threaded / horizontal-split · Log in · Help
December 06, 2005
WinDbg can't see D variables?
I am trying to get WinDbg to work with D on WinXP - and so far, I can get WinDbg
to track the current line in the source - but I can't get WinDbg to see any
variables.  All it seems to see are functions.  Is there some way to get WinDbg
to see D variables?
December 06, 2005
Re: WinDbg can't see D variables?
Jon L wrote:
> I am trying to get WinDbg to work with D on WinXP - and so far, I can get WinDbg
> to track the current line in the source - but I can't get WinDbg to see any
> variables.  All it seems to see are functions.  Is there some way to get WinDbg
> to see D variables?
> 
> 

Common problem.  I'm experiencing the same.

WinDbg uses .PDB (program database AFAIK) files to grab symbol 
information.  This PDB format is a proprietary Microsoft format and 
obviously is not documented for compiler writers (unless you sell your 
soul and purchase some sort of license that only big developer 
corporations can shell out enough cash for).  Then again, I could be 
making up that part in the parens =P.

When I ran a simple PDB under WinHex I found the file is extremely 
bloated, redundant, and padded.  This makes it very difficult to figure 
out what data is real and what is extra useless garbage.  Theoretically, 
one could grab a copy of Visual Studio 6.0 (or newer perhaps) and 
compile an extremely minimalistic C program and inspect the PDB's contents.

I recall many Windows debugging tutorials on WinDBG saying that you can 
download symbol tables from Microsoft.  I wonder if this HTTP-transfered 
format is different from the regular PDB files?  Ah, time to go sniff 
some packets... =P
December 06, 2005
Re: WinDbg can't see D variables?
James Dunne wrote:
> Jon L wrote:
> 
>> I am trying to get WinDbg to work with D on WinXP - and so far, I can 
>> get WinDbg
>> to track the current line in the source - but I can't get WinDbg to 
>> see any
>> variables.  All it seems to see are functions.  Is there some way to 
>> get WinDbg
>> to see D variables?
>>
>>
> 
> Common problem.  I'm experiencing the same.
> 
> WinDbg uses .PDB (program database AFAIK) files to grab symbol 
> information.  This PDB format is a proprietary Microsoft format and 
> obviously is not documented for compiler writers (unless you sell your 
> soul and purchase some sort of license that only big developer 
> corporations can shell out enough cash for).  Then again, I could be 
> making up that part in the parens =P.
> 
> When I ran a simple PDB under WinHex I found the file is extremely 
> bloated, redundant, and padded.  This makes it very difficult to figure 
> out what data is real and what is extra useless garbage.  Theoretically, 
> one could grab a copy of Visual Studio 6.0 (or newer perhaps) and 
> compile an extremely minimalistic C program and inspect the PDB's contents.
> 
> I recall many Windows debugging tutorials on WinDBG saying that you can 
> download symbol tables from Microsoft.  I wonder if this HTTP-transfered 
> format is different from the regular PDB files?  Ah, time to go sniff 
> some packets... =P

Are there any other debuggers for windows which can be used? and of 
course see D's variables?
December 06, 2005
Re: WinDbg can't see D variables?
> Are there any other debuggers for windows which can be used? and of
> course see D's variables?

there's one being developed on dsource (http://www.dsource.org/projects/dbug). 
you can get the svn repository too, but there aren't any official downloads 
available yet. Not sure how far along it is any more. I haven't checked up 
on it in a week or so.
Until we can use that for general debugging, I'm afraid we have to do it 
the old fashioned way...

Chris
December 06, 2005
Re: WinDbg can't see D variables?
Chris Lajoie wrote:
>> Are there any other debuggers for windows which can be used? and of
>> course see D's variables?
> 
> there's one being developed on dsource 
> (http://www.dsource.org/projects/dbug). you can get the svn repository 
> too, but there aren't any official downloads available yet. Not sure how 
> far along it is any more. I haven't checked up on it in a week or so.
> Until we can use that for general debugging, I'm afraid we have to do it 
> the old fashioned way...

According to Walter, the version of WinDbg shipped with the DMC CD can 
see variables.  I think what happened is that MS has moved to a new, 
proprietary, debug file format and they haven't bothered to continue 
supporting the old version with their tools.  Darn shame if you ask me.


Sean
December 06, 2005
Re: WinDbg can't see D variables?
> Are there any other debuggers for windows which can be used? and of
> course see D's variables?

I've used the debugger from MSVC 6 for a while. It works great, including 
variables. Arrays show up as 64-bit ints though, so you'll have to cast a 
little to get the length / ptr. Check the wiki for more info (EditorSupport 
if I remember correctly).

L.
December 06, 2005
Re: WinDbg can't see D variables?
>According to Walter, the version of WinDbg shipped with the DMC CD can 
>see variables.  I think what happened is that MS has moved to a new, 
>proprietary, debug file format and they haven't bothered to continue 
>supporting the old version with their tools.  Darn shame if you ask me.

Can someone tell me what version of WinDbg that is?  I'm willing to go back to
that one and drop the newer one if that older one does indeed support D
variables.
December 06, 2005
Re: WinDbg can't see D variables?
Jon L wrote:
>> According to Walter, the version of WinDbg shipped with the DMC CD can 
>> see variables.  I think what happened is that MS has moved to a new, 
>> proprietary, debug file format and they haven't bothered to continue 
>> supporting the old version with their tools.  Darn shame if you ask me.
> 
> Can someone tell me what version of WinDbg that is?  I'm willing to go back to
> that one and drop the newer one if that older one does indeed support D
> variables.

It's no longer available on the Microsoft website, as I've tried the 
oldest one they have available.  I think the file date is sometime in 
the mid 90's as people have reported that Visual Studio 6 seems to work 
as well.  But I'm not going to reinstall VC6 just to debug D apps--I'd 
much rather get my hands on a good copy of WinDbg.  Recently, I've been 
considering just buying a copy of the DMC CD to get it (and the library 
source code would be a nice perk).


Sean
December 06, 2005
Re: WinDbg can't see D variables?
Lionello Lunesu wrote:
>>Are there any other debuggers for windows which can be used? and of
>>course see D's variables?
> 
> 
> I've used the debugger from MSVC 6 for a while. It works great, including 
> variables. Arrays show up as 64-bit ints though, so you'll have to cast a 
> little to get the length / ptr. Check the wiki for more info (EditorSupport 
> if I remember correctly).
> 
> L. 
> 
> 

But I think MSVC uses windbg (or cdb) internally.
It must be like what Sean said, the older versions of windbg can see D's 
variables!
December 06, 2005
Re: WinDbg can't see D variables?
"Sean Kelly" <sean@f4.ca> wrote in message 
news:dn4r8p$1tqh$1@digitaldaemon.com...
> Jon L wrote:
>>> According to Walter, the version of WinDbg shipped with the DMC CD can 
>>> see variables.  I think what happened is that MS has moved to a new, 
>>> proprietary, debug file format and they haven't bothered to continue 
>>> supporting the old version with their tools.  Darn shame if you ask me.
>>
>> Can someone tell me what version of WinDbg that is?  I'm willing to go 
>> back to
>> that one and drop the newer one if that older one does indeed support D
>> variables.
>
> It's no longer available on the Microsoft website, as I've tried the 
> oldest one they have available.  I think the file date is sometime in the 
> mid 90's as people have reported that Visual Studio 6 seems to work as 
> well.  But I'm not going to reinstall VC6 just to debug D apps--I'd much 
> rather get my hands on a good copy of WinDbg.  Recently, I've been 
> considering just buying a copy of the DMC CD to get it (and the library 
> source code would be a nice perk).
>
>
> Sean

The DMC CD is nifty and has lots of small command-line goodies like a 
disassembler and such (I think...). I don't remember the exact WinDbg 
version on there but it tends to crash alot and I only use it when I want to 
see some variables - it feels like it's written for Windows 3.1 or 
something.
As for VC 6 - it's what I use all the time for C/C++ stuff at home. Now that 
I think about it I don't remember having success using it to debug dmd files 
but I don't remember trying very hard.
« First   ‹ Prev
1 2
Top | Discussion index | About this forum | D home