Remote debugging on ARM target


I have mono running on an ARM platform (similar to a Beaglebone). I'm trying to get remote debugging running via Xamarin Studio. I cant figure out how to tell the Mono Soft Debugger the IP address of the device I'm trying to debug?

Where is this option in Xamarin Studio, I know Mono Develop used to be able to do this?


  • mhutchmhutch USMember, Xamarin Team Xamurai

    The command for connecting the debugger to arbitrary IPs/port command is intended for prototyping, and is only available if you define the MONODEVELOP_SDB_TEST environment variable - this was the case for MonoDevelop too.

    For production use you should write a addin, with a custom project type, and a debugger engine that's able to start the app on the target and establish the debugger connection.

  • GusBrickerGusBricker AUMember
    edited October 2013

    Is that feature still available in XS? How do i define that environment variable? Just in my shell and launch from the same shell?

    Is there any guides on writing these addin's?

  • mhutchmhutch USMember, Xamarin Team Xamurai

    Yes, the feature is still available in Xamarin Studio. Define the env var from a terminal then launch XS from that terminal.

    There are several other threads in this forum that have advice on writing addins.

  • GusBrickerGusBricker AUMember

    Ok i just got the feature enabled.

    I cant find those threads your talking about. I found this one where you give an explanation about it.

    I guess i don't understand why the addin is needed and what it is doing on both the debugee and the computer?
    Can you explain it a bit more?

  • GusBrickerGusBricker AUMember

    Ok mhutch, I've been doing some reading. I think I get what you are talking about (please correct me if this is wrong).

    By debugger addin, you mean two things.
    1. A small program (call it the debug agent) that runs on the target in the background and can start up the actual application on the target when XS commands it too.

    1. A custom addin for XS which communicates with the debug agent to tell it to pause/run/step/etc...

    I saw on the web, you wrote something similar for Meego, do you know where the source is for this? I could base my work off that, which would give me a great head start!

  • GusBrickerGusBricker AUMember

    Wow my formatting somehow got really screwed up there...

  • mhutchmhutch USMember, Xamarin Team Xamurai

    No, the debug agent already exists inside the Mono runtime. When you start Mono with the correct commandline arguments, you enable the debug agent, which will either connect to an IDE or listen for a connection from an IDE.

    The reason I suggested you create a Xamarin Studio addin is so that you can debug by simply hitting the "Debug" button inside XS. Your addin would set up the conenction on the IDE side and launch the program with the correct arguments on the remote target.

    The MeeGo addin is here:

Sign In or Register to comment.