所以我有一个MATLAB程序,我在Matlab R2011b中编写和编译。现在我想分发编译版本。我知道用户必须在他们的计算机上安装MCR才能运行我的程序。我的问题是:如果这个用户已经在他的系统上安装了其他版本的MATLAB,它会有所作为。我检查过MATLAB帮助,这是写的
“Windows。要针对MCR安装运行已部署的组件,mcr_root \ ver \ runtime \ win32 | win64必须出现在matlabroot \ runtime \ win32 | win64之前的系统路径中。
要针对MCR安装运行已部署的组件,mcr_root \ ver \ runtime \ win32 | win64必须出现在matlabroot \ runtime \ win32 | win64之前的系统路径上。
如果mcr_root \ ver \ runtime \ arch首先出现在已编译的应用程序路径中,则应用程序将使用MCR安装区域中的文件。
如果matlabroot \ runtime \ arch首先出现在已编译的应用程序路径中,则应用程序将使用MATLAB编译器安装区域中的文件。“
每个用户都必须按照指示改变他的系统路径,或者即使没有这个改变,我的程序也会工作吗?
答案 0 :(得分:0)
是的,如果目标机器安装了Matlab版本,则可能无法按预期工作。我说可能好像你在目标机器上安装了相同版本的Matlab,有些东西可能正常工作。
为避免所有这些,您必须确保MCR首先出现在路径上。
要在本地开发机器上的MCR上运行应用程序,您应该确保MCR路径出现在Matlab的路径之前。
答案 1 :(得分:0)
我可以从我自己的经验来谈谈:
我想,这只是一个建议......我从不关心它,我从来没有遇到过这个问题......
它会起作用,你很可能不会注意到任何差异。 我刚刚在PATH中改变了那些记录,我编译的应用程序仍在运行。
多个MCR,例如,R2010b和R2012b不会干扰。测试了100多次。因此,没有Matlab的没有经验的最终用户将不必编辑PATH。