主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

使用 MATLAB Compiler 进行部署的步骤

您可以使用 MATLAB® Compiler™MATLAB Compiler SDK™ 将 MATLAB 文件打包为不需要 MATLAB 运行的可部署组件。

使用 MATLAB Compiler,您可以创建独立应用程序、Web App、Microsoft® Excel® 加载项以及 MapReduce 或 Spark™ 大数据应用程序。

使用 MATLAB Compiler SDK,您可以创建 C/C++ 共享库、.NET 程序集、Java® 类、Python® 包、COM 组件、MATLAB Production Server™ 可部署存档、MATLAB Production Server 的 Excel 加载项以及基于 Docker® 容器的微服务。

编写可部署的 MATLAB 代码

要将 MATLAB 脚本、函数或类文件打包以在 MATLAB 环境之外运行,您必须首先确保代码处于完成状态并准备好由最终用户运行。您可以使用 isdeployed 等函数来分离部署前必须运行的代码。例如,在已部署的应用程序中,MATLAB 路径是固定的且无法更改,因此使用 isdeployed 分离出修改路径的代码。有关详细信息,请参阅编写可部署的 MATLAB 代码

除了 MATLAB 脚本、MEX 文件和类文件之外,您还可以在编译的工件中包含其他类型的文件,例如数据文件。有关详细信息,请参阅在打包的应用程序中包含和访问文件

打包用于目标的代码

在打包过程中,编译器执行以下步骤:

  1. 使用依赖关系分析函数来包含必要的支持文件。有关详细信息,请参阅使用 MATLAB Compiler 进行依赖关系分析

  2. 验证 MEX 文件。特别是,mexFunction 入口点已经过验证。有关在打包应用程序中包含 MEX 文件的更多详细信息,请参阅在打包的应用程序中包含和访问文件

  3. 从输入文件及其依赖项创建可部署的存档。有关详细信息,请参阅关于可部署存档

  4. 生成特定于目标的包装器代码。

  5. 生成特定于目标的二进制包。

    对于 C++ 共享库、Java 包或 .NET 程序集等库目标,编译器会调用相应的第三方编译器。

您可以使用以下选项来打包 MATLAB 代码。

  • compiler.buildcompiler.package 函数,允许您在命令行中打包 MATLAB 代码

  • 编译器 App,允许您使用图形界面打包 MATLAB 代码。

  • mcc 函数,允许您在命令行中打包 MATLAB 代码,并提供其他选项来控制打包过程

有关这些打包方法的详细信息,请参阅选择部署选项

部署前测试工件

您可以使用 MATLAB 安装代替 MATLAB Runtime 来测试由 MATLAB CompilerMATLAB Compiler SDK 生成的工件。通常,测试使用与生成工件相同的 MATLAB 安装进行。用于测试的 MATLAB 版本必须与创建工件时使用的版本匹配。

测试成功后,您可以将工件转移到生产环境,并使用 MATLAB Runtime 运行它。

将文件分发至目标平台

创建组件后,分发应用程序文件或安装程序,其中包含在目标平台上运行该应用程序所需的所有资源。您可以使用编译器 App 或使用 compiler.package.installer 函数来创建安装程序。

compiler.package.installer 创建的安装程序将安装您的 MATLAB Compiler 生成的工件、任何生成的示例代码以及可选的完整 MATLAB Runtime。要创建可运行一个或多个特定 MATLAB Compiler 应用程序的最小 MATLAB Runtime 安装程序,请参阅 compiler.runtime.customInstaller (自 R2024b 起)

如果您创建包含已编译工件和 MATLAB Runtime 的安装程序,则 MATLAB Runtime 将与应用程序或共享库一起安装。如果您手动分发文件,请确保目标计算机可以访问 MATLAB Runtime。有关分发文件的详细信息,请参阅将 MATLAB Compiler SDK 文件分发给应用程序开发人员

将工件与目标语言应用程序集成

如果您使用 MATLAB Compiler SDK 打包 MATLAB 函数以供在用其他编程语言编写的应用程序中使用,则必须使用使用打包的 MATLAB 功能的目标语言编写应用程序代码。有关详细信息,请参阅将工件与目标语言应用程序集成

将工件与目标语言应用程序集成并针对 MATLAB Runtime 测试应用程序代码后,将应用程序连同所有必需的文件和依赖项一起部署到最终用户计算机。

安装 MATLAB Runtime

MATLAB Runtime 是一组免费提供的共享库,使您无需许可版本的 MATLAB 即可运行打包的 MATLAB 代码。有关详细信息,请参阅关于 MATLAB Runtime

如果您使用包含已编译工件和 MATLAB Runtime 的安装程序,则 MATLAB Runtime 将与应用程序或共享库一起安装。如果您手动分发文件,请确保目标计算机可以访问的 MATLAB Runtime 版本与用于编译组件的 MATLAB 版本相同或更高。

您可以在 MATLAB 中的开发计算机上运行已部署的组件,而无需 MATLAB Runtime

限制和约束

您可以打包大多数可直接从命令行调用的 MATLAB 功能。有关 MATLAB Compiler 不支持的函数列表,请参阅MATLAB Compiler 和 MATLAB Compiler SDK 不支持进行编译的函数

编译后的应用程序只能在开发它的平台上运行,但有一些例外。有关详细信息,请参阅限制

另请参阅

| |

主题