[Mono-list] VBNC in Mono.

Kornél Pál kornelpal at gmail.com
Sun Sep 10 10:32:38 EDT 2006


Hi,

>    Another area that could help would be to write a program that used
> the COM API to consume a .pdb debugging file from .NET and convert it
> into a .mdb that Mono can consume.
>
>    Alternatively, I believe there might be tools to do .pdb to ecma
> debugging, and then we would need an ECMA debugging to Mono debugging
> translator.

I think an easier solution is to generate mdb debug info using MS.NET SRE. 
The attached Compiler.diff implements this hack.

The current SymbolWriter needs some cleanup and in fact is not able to work 
with MS.NET.

I've done a lot of work on SymbolWriter to make it compatible with MS.NET. I 
think the modifications I've done eventually should go into 
Mono.CompilerServices.SymbolWriter.dll but that needs some cleanup and 
modifications in SRE as well.

The attached SymbolWriter.diff patches the SymbolWriter to be able to work 
with MS.NET. This modified Mono.CompilerServices.SymbolWriter.dll (profile 
2.0) should be compiled and referenced to vbnc.exe when compiling vbnc.

Note that there will be a resulting pdb file because it is generated from 
unmanaged code but it is not required.

To get source information:
1. Compile vbnc1.exe using MS.NET vbc.exe or Visual Studio 2005.
2. Compile vbnc2.exe using vbnc1.exe on the MS.NET runtime. (This version 
will generate mdb file.)
3. Compile vbnc3.exe using mono --debug vbnc2.exe on the Mono runtime. (This 
will print source information as well.)

According to my experienced source information is not always correct but is 
+/-1 line correct. This may be a bug in the Mono runtime as well.

Kornél 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: SymbolWriter.diff
Type: application/octet-stream
Size: 9311 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-list/attachments/20060910/a2e91a0b/attachment-0002.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Compiler.diff
Type: application/octet-stream
Size: 1617 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-list/attachments/20060910/a2e91a0b/attachment-0003.obj 


More information about the Mono-list mailing list