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

Attachment: SymbolWriter.diff
Description: Binary data

Attachment: Compiler.diff
Description: Binary data

_______________________________________________
Mono-list maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to