Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在同一台机器上运行Matlab MCR和Matlab_Matlab_Matlab Compiler - Fatal编程技术网

在同一台机器上运行Matlab MCR和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_

我在使用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编译器安装区域中的文件。”


谁能帮我把这些点再联系起来一点吗?我不知道这是什么意思。谢谢

您需要在Windows中正确设置PATH全局环境变量。具体操作方式取决于Windows版本

这是Google通过查询“在Windows上设置路径”获得的第一个链接:


此变量是目录列表。请确保在此列表中前面有一个带有MCR可执行文件的目录,而不是一个带有MATLAB可执行文件的目录。

我遇到了同样的问题:我编译的代码是多线程的,这是我不想要的

通过使用以下选项进行编译,问题得以解决:


-R-singleCompThread

感谢您的回复。我尝试设置PATH变量,但没有任何更改。该列表也不包含任何包含MATLAB可执行文件的目录。请通过
getenv('PATH')
在代码中签入PATH变量。在设置路径后,请尝试重新启动计算机。谢谢--这是一个非常有用的选项。我认为在我的例子中还有另一个问题,因为当我在没有MATLAB的计算机上运行同一个exe时,它只使用一个线程,所以我不认为是exe本身。我更关心的是使用MCR vs MATLAB,而不是线程本身的数量。