如何从不需要机器上的 Matlab 编译器运行时 (MCR) 的 matlab gui 生成可执行文件

Posted

技术标签:

【中文标题】如何从不需要机器上的 Matlab 编译器运行时 (MCR) 的 matlab gui 生成可执行文件【英文标题】:How to generate an executable form a matlab gui that doesn't require Matlab Compiler Runtime (MCR) on the machine 【发布时间】:2016-12-10 00:30:11 【问题描述】:

如何从 matlab gui 生成可执行文件(exe 文件)不需要机器上的 Matlab 编译器运行时 (MCR)。 当我在包中包含 Matlab 运行时时,大小变得太大了。

【问题讨论】:

不要将 MCR 与您的应用程序打包在一起。让客户端下载并安装它。 是的,我知道这个选项存在,但我的问题是,如何制作不需要在计算机上安装 MCR 的可执行文件。我的教授谈到使用 java 创建一个运行时,但我仍然不明白我将如何做到这一点,或者这究竟意味着什么...... 【参考方案1】:

最接近的方法是使用Matlab Coder 生成 C/C++ 代码并将其构建为独立的 C/C++ 可执行文件,但 Matlab-Coder 有许多怪癖,不支持完整的 Matlab 功能集。如果您朝那个方向前进,预计会有一些波涛汹涌的水域。

使用 matlab 编译器 - 恐怕做不到。

【讨论】:

有问题的 Matlab 代码包含 Matlab Coder 不支持的绘图功能。有没有办法将另一个工具/方法与 Matlab Coder 结合起来,以便 Matlab Coder 处理它支持的代码部分,而另一个“工具”处理其余代码,最后结合结果? @Ofek 是的,但该工具将是 matlab 编译器。如果不依赖 MCR,您将无法生成这样的可执行文件。

以上是关于如何从不需要机器上的 Matlab 编译器运行时 (MCR) 的 matlab gui 生成可执行文件的主要内容,如果未能解决你的问题,请参考以下文章

网络位置上的 Visual C++ 运行时

如何在 Linux 终端中使用 MCR(Matlab 编译器运行时)运行 Matlab 文件?

IPPL 与 Matlab 编译器运行时 (MCR)

mexopencv 每次重启 Matlab 都需要重新编译

如何检查 Matlab 编译器运行时 (MCR) 在我的电脑上是不是正常工作?

如何使用用户预定义的数据设置 mwArray?是不是可以混合使用 Matlab 库编译器和 mex 运行时?