Debugging Matlab编译器输出可执行文件的不可复制exe挂起

Debugging Matlab编译器输出可执行文件的不可复制exe挂起,debugging,matlab,matlab-deployment,Debugging,Matlab,Matlab Deployment,我有以下问题: 我有一个Matlab程序,以一些*.m文件的形式。它随后被编译成可执行文件并使用。问题是,有时生成的可执行文件会挂起,当调试/运行IDE中的*.m文件时(即使使用相同的输入数据),也无法再现这种行为 为了弄清楚我打算做什么: 将(以某种方式)*.m文件编译成C/C++ 将C/C++编译为debug以获取.exe和.pdb 稍后当.exe挂起时,只需将visual studio调试器“附加”到挂起的.exe,以检查它“循环/等待”的位置 不幸的是,Matlab编译器(正如我今天

我有以下问题: 我有一个Matlab程序,以一些*.m文件的形式。它随后被编译成可执行文件并使用。问题是,有时生成的可执行文件会挂起,当调试/运行IDE中的*.m文件时(即使使用相同的输入数据),也无法再现这种行为

为了弄清楚我打算做什么:

  • 将(以某种方式)*.m文件编译成C/C++
  • 将C/C++编译为debug以获取.exe和.pdb 稍后当.exe挂起时,只需将visual studio调试器“附加”到挂起的.exe,以检查它“循环/等待”的位置
不幸的是,Matlab编译器(正如我今天被告知的)在创建可执行文件之前不会生成C/C++代码。我被-gmcc选项误导,根据文件规定,该选项应执行以下操作:

-g Generate Debugging Information

Include debugging symbol information for the C/C++ code generated by MATLAB Compiler.
它看起来非常像我想要存档的东西。
如果有人能向我解释这一点或建议如何归档我正在尝试做的事情(如果可以的话),我将不胜感激。

在Matlab编译器中无法创建可调试代码,因为部署的代码使用MCR。(Matlab虚拟机)

见这个问题:

因为您没有错误,而是一个无限循环,所以在这种情况下,最好的解决方案是屏幕输出,希望您能够跟踪错误