[Mono-devel-list] emitting debug information

Martin Baulig martin at ximian.com
Wed Dec 15 22:14:05 EST 2004


Hi,

I'll have a look at this on Friday.

Martin

On Tue, 2004-12-14 at 19:52 -0500, Miguel de Icaza wrote:
> Hello,
> 
>    [CCing Martin who can provide more information]
> 
> > During our work on the Nemerle compiler we encountered some problems
> > with emission of the debug information under mono. There is some API
> > defined in the S.R.E. documentation. It works under MS.NET but not
> > under Mono. I've seen that some strange hacks with Invoke'ing members
> > through reflection is used in mcs (symbolwriter.cs).
> > 
> > What exactly doesn't work is this:
> > 
> >   http://nemerle.org/mailman/pipermail/svn/2004-December/003555.html
> > 
> > (this is patch with changes needed for debug output). Now when given
> > program file is compiled with this, mono --debug doesn't print line
> > number information when exception is thrown by the program (this is
> > the best way I come out to actually check if any debug info is present
> > in the image).
> > 
> > So I've got a few questions:
> > 1. Is there any documentation available?
> > 2. How to check the debug info in mono-compiled PE image? That is
> > check if it's at all present, and if so, dump it somehow.
> > 3. What have we done wrong? ;-)
> 
> The story is a bit like this, but Martin can probably provide more
> information:
> 
>         We never were able to figure out how to properly "get" the
>         handle to the debugging information symbol writer on .NET, so
>         when we had to develop our own, we defined our own internal
>         interface.
>         
>         To see how this is done, look in the Mono C# compiler
>         mcs/mcs/symbolwriter.cs, I think most of the information is
>         encapsulated there.
>         
>         This basically uses the internal Mono debugging information
>         generator.
>         
> It is "easy" to see if this worked with Mono 1.1.xx, as the result will
> produce a file.exe and a file.exe.mdb.  The later contains the debugging
> information.
> 
> With Mono 1.0.xx the debugging information is embedded into the
> executable as a resource so you will only notice it because the
> executable is suffering from bloating ;-)
> 
> Miguel.
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
> 




More information about the Mono-devel-list mailing list