Debugging Max externals

Dec 3, 2008 at 10:52am

Debugging Max externals

Forgive me for being a total noob here. I’m trying to debug a Max external I build in visual studio with Max Runtime. However, when the debugger starts Max Runtime I get the message “Debugging information for ‘MaxRT.exe’ cannot be found or does not match. Symbols not loaded”. I’m used to work with XCode and adding executables to the debug process has never been a problem. I’m missing something obvious here, maybe someone can help me out?

Thanks in advance.

#41167
Dec 3, 2008 at 11:22am

On Wed, Dec 3, 2008 at 11:53 AM, Tim Groeneboom wrote:

>
> Forgive me for being a total noob here. I’m trying to debug a Max external
> I build in visual studio with Max Runtime. However, when the debugger starts
> Max Runtime I get the message “Debugging information for ‘MaxRT.exe’ cannot
> be found or does not match. Symbols not loaded”. I’m used to work with XCode
> and adding executables to the debug process has never been a problem. I’m
> missing something obvious here, maybe someone can help me out?
>
>
I think this is normal behavior. It means that the debugger can’t access the
debugging information from MaxRT. Which makes total sense, because the
application itself is not a debug build. The reason you need to use MaxRT is
because of the PACE copy protection.

Just continue what you were doing. Drag/load your patch in MaxRT, and you
will see that its symbols will get loaded. Place a breakpoint in one of your
methods, trigger it from max, and there you go.

Thijs

#146365
Dec 3, 2008 at 1:13pm

Hmmm. Visual Studio doesn’t seem to load any symbols and my breakpoints in the objects code doesn’t seem to get hit whenever I load the patch which contains the object I’m debugging with Max MSP Runtime. It’s kind of strange because whenever I do the same thing in XCode it works perfectly, forgive me for being a total windows newbie here :)

#146366
Dec 3, 2008 at 1:26pm

On Wed, Dec 3, 2008 at 2:13 PM, Tim Groeneboom wrote:

>
> Hmmm. Visual Studio doesn’t seem to load any symbols and my breakpoints in
> the objects code doesn’t seem to get hit whenever I load the patch which
> contains the object I’m debugging with Max MSP Runtime. It’s kind of strange
> because whenever I do the same thing in XCode it works perfectly, forgive me
> for being a total windows newbie here :)
>

Don’t know. This is just a shot in the dark:
- make sure there’s not another copy (release build maybe) of your object
somewhere in the max search paths. The folder which contains the patch is
automatically included (non-recursive). Maybe print a little message in your
new function to make sure your dealing with the right one.
- check your VS project settings and make sure the debug symbols are not
stripped (in your debug build settings)

Is your object loading correctly when you don’t try to debug? Can you
trigger (test) methods properly?

Thijs

#146367
Dec 3, 2008 at 1:56pm

Quote: thijs.koerselman wrote on Wed, 03 December 2008 14:26
—————————————————-
> Don’t know. This is just a shot in the dark:
> – make sure there’s not another copy (release build maybe) of your object
> somewhere in the max search paths.

With various copies of development externals on disk and complex search paths, this has been a constant source of confusion for (I suspect not only) me.

I tend to drag/drop my development externals onto MaxRT when debugging. Seems the most reliable way to be sure the debug version is loaded.

> Maybe print a little message in your
> new function to make sure your dealing with the right one.

Also a good idea, although I’d do it in main().

Your main() is called once and only once in a session, your new method is called on every instantiation. It can be useful to keep this little distinction in mind, also for other things.

HtH — P.

#146368

You must be logged in to reply to this topic.