digitalmars.D - Why D can be debug in VC
- Huang Yicheng (2/2) Jan 18 2005 I cannot understand how it works. Can some one explain it for me briefly...
- Lionello Lunesu (16/16) Jan 19 2005 Hi..
- Huang Yicheng (7/24) Jan 19 2005 Thank you! Now I can understand the principle.
- Lionello Lunesu (7/11) Jan 19 2005 I can't help you there. I know there are more formats for debug informat...
- Huang Yicheng (3/15) Jan 19 2005 Thanks anyway. Think it should be COFF.
I cannot understand how it works. Can some one explain it for me briefly. Thank you
Jan 18 2005
Hi.. Please explain your question. I've noticed your reply to my explanation on how to debug. Is it clear? Is it working but you wonder how it's possible that it works? The trick is that VC understand the debug information in compiled/linked D executable. This information tells the debugger where the source code for each byte in the code can be found (I don't know the details of this, but in practice this is what it comes down to). So if you put a breakpoint in your opened D source code from within VC, it can find the corresponding memory address to break at from this debug information. The debugger in VC knows nothing of C/C++. Maybe it's better if we'd refer to the debugger in MSDEV, since it just interprets the language independent debug information embedded in the executables. Hope this covers your question. Lionello.
Jan 19 2005
Thank you! Now I can understand the principle. Another question is, how can we know the format (I mean debug inforamtion) of debugger in MSDEV ? Is it the same as gdb? Yicheng "Lionello Lunesu" <lionello.lunesu crystalinter.remove.com> wrote in message news:csl45l$127j$1 digitaldaemon.com...Hi.. Please explain your question. I've noticed your reply to my explanation on how to debug. Is it clear? Is it working but you wonder how it's possible that it works? The trick is that VC understand the debug information in compiled/linked D executable. This information tells the debugger where the source code for each byte in the code can be found (I don't know the details of this, but in practice this is what it comes down to). So if you put a breakpoint in your opened D source code from within VC, it can find the corresponding memory address to break at from this debug information. The debugger in VC knows nothing of C/C++. Maybe it's better if we'd refer to the debugger in MSDEV, since it just interprets the language independent debug information embedded in the executables. Hope this covers your question. Lionello.
Jan 19 2005
"Huang Yicheng" <zergbird msn.com> wrote in message news:csl7lt$18gr$1 digitaldaemon.com...Thank you! Now I can understand the principle. Another question is, how can we know the format (I mean debug inforamtion) of debugger in MSDEV ? Is it the same as gdb?I can't help you there. I know there are more formats for debug information (COFF,OMF) but I really have no idea which format is produced by gcc/msvc/dmd/etc, what format is understood by windbg/msdev/gdb/etc. Sorry. Lionello.
Jan 19 2005
Thanks anyway. Think it should be COFF. "Lionello Lunesu" <lionello.lunesu crystalinter.remove.com> wrote in message news:cslool$25p4$1 digitaldaemon.com..."Huang Yicheng" <zergbird msn.com> wrote in message news:csl7lt$18gr$1 digitaldaemon.com...Thank you! Now I can understand the principle. Another question is, how can we know the format (I mean debug inforamtion) of debugger in MSDEV ? Is it the same as gdb?I can't help you there. I know there are more formats for debug information (COFF,OMF) but I really have no idea which format is produced by gcc/msvc/dmd/etc, what format is understood by windbg/msdev/gdb/etc. Sorry. Lionello.
Jan 19 2005
COFF & OMF are object file formats, describes the layout for object files. GCC emits dwarf2 MSVC / DMC emits CodeView information, usually embeded in the exe, it can also be pushed into external .pdb file. Hope that helps, Charlie "Huang Yicheng" <zergbird msn.com> wrote in message news:csluls$2gm5$1 digitaldaemon.com...Thanks anyway. Think it should be COFF. "Lionello Lunesu" <lionello.lunesu crystalinter.remove.com> wrote inmessagenews:cslool$25p4$1 digitaldaemon.com...produced"Huang Yicheng" <zergbird msn.com> wrote in message news:csl7lt$18gr$1 digitaldaemon.com...Thank you! Now I can understand the principle. Another question is, how can we know the format (I mean debug inforamtion) of debugger in MSDEV ? Is it the same as gdb?I can't help you there. I know there are more formats for debug information (COFF,OMF) but I really have no idea which format isby gcc/msvc/dmd/etc, what format is understood by windbg/msdev/gdb/etc. Sorry. Lionello.
Jan 19 2005
Just a side note theres a good book called 'linkers & loaders ' ( http://www.amazon.com/exec/obidos/ASIN/1558604960/002-0853754-5237642 ) that provides a good overview of the subject. Charlie! "Charles" <no email.com> wrote in message news:csmdfb$719$1 digitaldaemon.com...COFF & OMF are object file formats, describes the layout for object files. GCC emits dwarf2 MSVC / DMC emits CodeView information, usually embeded in the exe, it can also be pushed into external .pdb file. Hope that helps, Charlie "Huang Yicheng" <zergbird msn.com> wrote in message news:csluls$2gm5$1 digitaldaemon.com...windbg/msdev/gdb/etc.Thanks anyway. Think it should be COFF. "Lionello Lunesu" <lionello.lunesu crystalinter.remove.com> wrote inmessagenews:cslool$25p4$1 digitaldaemon.com...produced"Huang Yicheng" <zergbird msn.com> wrote in message news:csl7lt$18gr$1 digitaldaemon.com...Thank you! Now I can understand the principle. Another question is, how can we know the format (I mean debug inforamtion) of debugger in MSDEV ? Is it the same as gdb?I can't help you there. I know there are more formats for debug information (COFF,OMF) but I really have no idea which format isby gcc/msvc/dmd/etc, what format is understood bySorry. Lionello.
Jan 19 2005