[Mono-dev] Debugging with MonoDevelop
Francois Schelling
fschelling at square-enix-montreal.com
Mon Nov 19 19:14:50 UTC 2012
Hi again,
I've tried to repro the same setup on a small test app and still have the result. Here my c++ code. On the C# assembly, I only have one class with an empty Main. When putting a break point, it triggers and exception, without breakpoint, everything is fine.
I'm using Mono 3.0.1 for Windows and using a custom x64 build of Mono 3.0 for my Mono library. I'm building my c# assembly with MonoDevelop using Mono / .Net 4.0 as the Target framework.
void InitMono()
{
mono_set_assemblies_path("./");
if(debugMono)
{
// Debugging w/Embedded Mono how to set breakpoints in C# code?
static const char* options[] = {
"--soft-breakpoints",
"--debugger-agent=transport=dt_socket,address=127.0.0.1:10000"
};
mono_jit_parse_options(sizeof(options)/sizeof(char*), (char**)options);
mono_debug_init(MONO_DEBUG_FORMAT_MONO);
}
m_MainMonoDomain = mono_jit_init_version("MainDomain", "v4.0.30128");
m_GameMonoDomain = mono_domain_create_appdomain("GameDomain", NULL);
if(debugMono)
{
mono_debug_domain_create(m_GameMonoDomain);
}
m_GameMonoAssembly = mono_domain_assembly_open(m_GameMonoDomain, "MonoGame.exe");
if(!m_GameMonoAssembly)
{
printf("Error: Cannot find assembly MonoGame.exe");
return false;
}
m_GameMonoImage = mono_assembly_get_image(m_GameMonoAssembly);
if (!m_GameMonoImage)
{
printf("Error: Cannot create image for assembly GameMono.exe");
return false;
}
char* args[1];
args[0] = "game-mono.exe";
mono_jit_exec(m_GameMonoDomain, m_GameMonoAssembly, 1, args);
}
Francois Schelling
Senior Programmer
Square Enix Montréal
fschelling at square-enix-montreal.com
-----Original Message-----
From: mono-devel-list-bounces at lists.ximian.com [mailto:mono-devel-list-bounces at lists.ximian.com] On Behalf Of Francois Schelling
Sent: 16 November 2012 11:47
To: Andres G. Aragoneses; mono-devel-list at lists.ximian.com
Subject: Re: [Mono-dev] Debugging with MonoDevelop
I've got two questions:
1- I'm now able to generate the mdb file by compiling with MonoDevelop. But I had to install Mono 3.0.1 for Windows in order to add a new .NET runtimes in MonoDevelop. But I'm currently building my own Mono version since I need it to be in x64. Is it the right way to do it our mixing the use of these two mono versions is wrong?
2- I'm now able to attach the MonoDevelop to my mono domain but when a breakpoint is triggered, my main app crashed on:
- Unhandled exception at 0x774d8e3d in engine.exe: 0xC0000005: Access violation writing location 0x00000000000c0a98
and I got the following message in MonoDevelop
- System.NullReferenceException has been thrown.
Francois Schelling
Senior Programmer
Square Enix Montréal
fschelling at square-enix-montreal.com
-----Original Message-----
From: mono-devel-list-bounces at lists.ximian.com [mailto:mono-devel-list-bounces at lists.ximian.com] On Behalf Of Andres G. Aragoneses
Sent: 16 November 2012 08:54
To: mono-devel-list at lists.ximian.com
Subject: Re: [Mono-dev] Debugging with MonoDevelop
IIRC, MS.NET compiler generates .pdb files, while Mono's generates .mdb files. So using MonoDevelop + MS.NET won't help. Use MonoDevelop in Linux, or install Mono for Windows (and configure MonoDevelop to build with Mono, not .NET).
On 16/11/12 13:25, Francois Schelling wrote:
> Thanks for the link. What I'm missing is the .mdb file. How do you generate that? I'm currently building a C# solution I've created with VS Studio 2010 on Windows and I can compile it with both VS or MonoDevelop.
>
> Francois Schelling
> Senior Programmer
> Square Enix Montréal
> fschelling at square-enix-montreal.com
>
>
>
>
>
>
>
> -----Original Message-----
> From: mono-devel-list-bounces at lists.ximian.com
> [mailto:mono-devel-list-bounces at lists.ximian.com] On Behalf Of
> Guillaume George
> Sent: 16 November 2012 01:59
> To: mono-devel-list at lists.ximian.com
> Subject: Re: [Mono-dev] Debugging with MonoDevelop
>
> Hi,
>
> I have just worked on this topic this morning.
> You will find a nice article about this right there :
> http://www.jeffongames.com/2012/03/debugging-embedded-mono/
>
> Regards,
>
>
>
> --
> View this message in context:
> http://mono.1490590.n4.nabble.com/Debugging-with-MonoDevelop-tp4657403
> p4657406.html Sent from the Mono - Dev mailing list archive at
> Nabble.com.
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
> ______________________________________________________________________
> This email has been scanned by the MessageLabs
> ______________________________________________________________________
>
> ______________________________________________________________________
> This email has been scanned by the MessageLabs
> ______________________________________________________________________
>
_______________________________________________
Mono-devel-list mailing list
Mono-devel-list at lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
______________________________________________________________________
This email has been scanned by the MessageLabs ______________________________________________________________________
______________________________________________________________________
This email has been scanned by the MessageLabs ______________________________________________________________________
_______________________________________________
Mono-devel-list mailing list
Mono-devel-list at lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
______________________________________________________________________
This email has been scanned by the MessageLabs ______________________________________________________________________
______________________________________________________________________
This email has been scanned by the MessageLabs
______________________________________________________________________
More information about the Mono-devel-list
mailing list