在同一台机器上运行Matlab MCR和Matlab
我在使用MCR而不是Matlab运行编译后的.exe文件时遇到了问题(我可以看出,因为程序使用了多个线程,如果使用MCR运行,则不会这样做)。MATLAB文档(http://www.mathworks.com/help/toolbox/compiler/f12-999353.html)说: “要针对MCR安装运行已部署的组件,MCR_root\ver\runtime\win32 | win64必须出现在matlabroot\runtime\win32 | win64之前的系统路径上 如果mcr_root\ver\runtime\arch首先出现在编译的应用程序路径上,则应用程序将使用mcr安装区域中的文件 如果matlabroot\runtime\arch首先出现在已编译的应用程序路径上,则应用程序将使用MATLAB编译器安装区域中的文件。”在同一台机器上运行Matlab MCR和Matlab,matlab,matlab-compiler,Matlab,Matlab Compiler,我在使用MCR而不是Matlab运行编译后的.exe文件时遇到了问题(我可以看出,因为程序使用了多个线程,如果使用MCR运行,则不会这样做)。MATLAB文档(http://www.mathworks.com/help/toolbox/compiler/f12-999353.html)说: “要针对MCR安装运行已部署的组件,MCR_root\ver\runtime\win32 | win64必须出现在matlabroot\runtime\win32 | win64之前的系统路径上 如果mcr_
谁能帮我把这些点再联系起来一点吗?我不知道这是什么意思。谢谢 您需要在Windows中正确设置PATH全局环境变量。具体操作方式取决于Windows版本 这是Google通过查询“在Windows上设置路径”获得的第一个链接:
此变量是目录列表。请确保在此列表中前面有一个带有MCR可执行文件的目录,而不是一个带有MATLAB可执行文件的目录。我遇到了同样的问题:我编译的代码是多线程的,这是我不想要的 通过使用以下选项进行编译,问题得以解决:
-R-singleCompThread
感谢您的回复。我尝试设置PATH变量,但没有任何更改。该列表也不包含任何包含MATLAB可执行文件的目录。请通过getenv('PATH')
在代码中签入PATH变量。在设置路径后,请尝试重新启动计算机。谢谢--这是一个非常有用的选项。我认为在我的例子中还有另一个问题,因为当我在没有MATLAB的计算机上运行同一个exe时,它只使用一个线程,所以我不认为是exe本身。我更关心的是使用MCR vs MATLAB,而不是线程本身的数量。