Debug a mex function in Visual Studio

后端 未结 2 1115
悲&欢浪女
悲&欢浪女 2021-01-06 11:32

I\'m trying to wrap existing C++ code into a MATLAB callable function. I\'m using Visual Studio 2013 to generate the MEX file . The MEX file is created properly, I can call

相关标签:
2条回答
  • 2021-01-06 12:08

    You could also run a MATLAB session as usual, and then attach Visual Studio to the running process. This is explained in more details in the documentation. Here is a quick summary:

    • compile the source MEX-file with debugging symbols enabled.
    • open the source C/C++ file in Visual Studio, and place a breakpoint.
    • start a normal MATLAB session. Then from Visual Studio, attach to the running matlab.exe process.
    • finally from MATLAB, run the MEX-function. You should hit the breakpoint with execution paused.
    0 讨论(0)
  • 2021-01-06 12:13

    Turns out <MATLABROOT>\bin\matlab.exe actually runs <MATLABROOT>\bin\w64\matlab.exe. So if I ask Visual Studio to run that, breakpoints are triggered as expected.

    Running MATLAB this way under the debugger is a lot slower than any other way, but at least now I can debug my code.

    0 讨论(0)
提交回复
热议问题