[Mono-dev] Mono Debugger: Some questions

Harald Krapfenbauer krapfenbauer at ict.tuwien.ac.at
Mon Jun 4 12:38:46 EDT 2007

Hello Martin,

I recently investigated the Mono Debugger and it looks quite good and
stable for Mono C# development. However, I have some questions...

1) Changing variables
The Mono web site states that the debugger is able to "Inspect and
change static and instance fields, local variables, and parameters
[DONE]." Inspecting variables etc. does work, but I did not found a
command to change them. What's the current status or what is the correct

2) IronPython support
Debugging Mono assemblies that were created by Ironpython (i used 1.1)
is partly working. I can set line breakpoints, next-stepping works, and
source code lines of python code are also shown. (I saved the .exe
before with -X:SaveAssemblies.) What's annoying is that the debugger
always steps into the Ironpython source code. Furthermore, inspecting
python variables does not work.

Say, I want to enhance MDB with Ironpython support, what would I need to
implement? Create a new namespace Mono.Debugger.Languages.IronPython?

3) Remote debugging support
Say, I want to have remote debugging with MDB where MDB shall run on the
host and the debugee runs on the target.
I investigated mdb's source code and came to the following approach: For
the host, the libmonodebuggerserver library does not issue the ptrace()
commands locally, but send the commands via TCP/IP to the target. On the
target, a small server listens, takes the commands, and executes the
ptrace() commands locally. This would be similar to gdb and gdbserver.
What do you think about this approach? Would it be feasible and a good
solution? Are there any traps you think of?

Best greetings and thank you in advance,

More information about the Mono-devel-list mailing list