在运行使用 MATLAB Compiler 编译的应用程序时,为什么会收到有关缺少 mclmcrrt7x.dll 的错误?

在部署计算机上运行使用 MATLAB Compiler 编译的应用程序时,收到有关缺少 mclmcrrt7x.dll 文件的错误消息(其中 x 是应在目标系统上安装的 MCR 的次要版本)。

 採用された回答

MathWorks Support Team
MathWorks Support Team 2021 年 3 月 2 日
編集済み: MathWorks Support Team 2021 年 3 月 2 日

0 投票

mclmcrrt7x.dll 是在没有安装 MATLAB 和 MATLAB Compiler 的部署计算机上运行 MATLAB Compiler 生成的应用程序时所需的运行时库。在 MATLAB Compiler Runtime (MCR) 安装过程中将安装此库。
 
此错误通常源于以下两种情形之一:
 
1.未安装正确版本的 MATLAB Compiler Runtime (MCR)。
 
使用 MATLAB Compiler 生成的应用程序依赖于生成该应用程序的 MATLAB Compiler 版本所对应的运行时库。
 
您可以在创建 MCR 安装程序的 MATLAB 安装的以下子目录中找到该程序。
$MATLABROOT\toolbox\compiler\deploy\win32\mcrInstaller.exe
$MATLABROOT\toolbox\compiler\deploy\win64\mcrInstaller.exe
(其中 $MATLABROOT 是您计算机上的 MATLAB 根目录,通过在 MATLAB 命令提示符下键入以下命令:
matlabroot
可以返回该根目录。)
 
有关安装 MCR 的说明位于以下文档中:
Deploying to End Users :: Deployment Process (MATLAB Compiler)
在部署计算机上运行 MCRInstaller.exe 将安装 MCR,包括 mclmcrrt7x.dll:
$MCRROOT\v$VER\runtime\win32\mclmcrrt$VER.dll
($MCRROOT 是在 MATLAB Component Runtime 安装过程中选择的 MATLAB Compiler Runtime 根目录。通常默认为类似于 C:\Program Files\MATLAB\MATLAB Compiler Runtime 的根目录。$VER 是不带句点的 MCR 版本号。)
 
如果您没有安装与编译应用程序使用的 MATLAB Compiler 版本对应的 MCR 版本,则会导致“缺少 mclmcrrt7x.dll”错误消息。例如,您安装了 MCR for MATLAB Compiler 4.9 (R2008b),则将安装 7.9 版的 mclmccrt DLL,如:
C:\Program Files\MATLAB\MATLAB Compiler Runtime\v79\runtime\win32\mclmcrrt79.dll
对于 R2008a 之前的版本,运行时库所在的路径略有不同:
C:\Program Files\MATLAB\MATLAB Component Runtime\
现在,如果在没有安装该版本 MCR 的情况下在此计算机上执行使用 MATLAB Compiler 4.6 (R2007a) 生成的应用程序,则会生成“缺少 mclmcrrt76.dll”错误。
 
2.第二种情况是未正确设置系统的 PATH 环境变量。
 
在 MATLAB Compiler Runtime 安装过程中,应当已将以下目录添加到您的系统路径中:
$MCRROOT\v$VER\runtime\win32
要解决此问题,请在部署计算机上手动更新 PATH 环境变量以包括以下目录:
$MCRROOT\v$VER\runtime\win32
有关修改系统 PATH 环境变量的说明,请参阅下面引用的解决方案。
 
另请注意,由于各个版本的 MCR 的 DLL 具有不同的名称,因此多个版本的 MCR 可以安装在同一计算机上。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeC Shared Library Integration についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!