【问题标题】:Could not access the MCR component cache无法访问 MCR 组件缓存
【发布时间】:2025-12-31 16:25:09
【问题描述】:

我想使用 CGI 和 Apache Web 服务器让用户访问运行我编译的 Matlab 应用程序(一个 exe 文件)。我按照this guide 的说明进行操作。

但是,我在网络服务器日志中收到错误消息:

[错误] [client 127.0.0.1] 无法访问 MCR 组件缓存。,引用者:.../standalone.html

我正在使用 Matlab 2012a。是否有任何方法可以控制使用 Matlab 2012a 编译的应用程序的 MCR 缓存?此 Matlab 版本的编译没有更多的 CTF 文件。

谢谢。

【问题讨论】:

    标签: matlab webserver cgi


    【解决方案1】:

    我相信在最新版本的 MATLAB Compiler 中,CTF 存档默认嵌入在 .exe 中,但您可以通过从 deploytool 设置中选择一个选项或使用 @ 987654324@参数与mcc

    CTF 存档通常会在您第一次运行组件时自动展开,但如果您需要手动展开它(我相信从 CGI 调用它时您需要这样做,尽管我自己从未这样做过)在matlabroot\toolbox\compiler\arch 中有一个名为extractCTF.exe 的实用程序,其中arch 是您的操作系统类型,例如win32 等。

    请参阅herehere 了解更多信息。

    希望有帮助!

    【讨论】: