MCC.

编译MATLAB部署函数

描述

MCC.选项mfilename1 mfilename2 ... mfilenamen编译由选项指定的函数。

所使用的选项取决于编译的预期结果。有关编译的资料:

  • C / C ++共享库,.NET程序集,Java®包裹,或python®包看到MCC.对于MATLAB®编译器SDK™

  • MATLAB生产服务器™可部署的档案或Excel®加载项MATLAB生产服务器MCC.对于Matlab Compiler SDK.

独立应用

示例

mcc - m选项mfilename.将函数编译成独立应用程序。

这相当于mcc -W主-T链接:exe

示例

mcc - e选项mfilename.将该函数编译为不打开MS-DOS的独立应用程序®命令窗口。

该语法等价于-W WinMain -T link:exe

Excel插件

示例

mcc - w的excel:addin_name类名称版本=Version_number.“- t链接:自由选项mfilename1 mfilename2 ... mfilenamen创建一个微软®Excel从指定文件的外接程序。

  • addin_name-指定插件及其命名空间的名称,命名空间是一个句点分隔的列表,例如companyname.groupname.component.

  • 类名称- 指定要创建的类的名称。如果未指定类名,MCC.使用addin_name作为默认值。如果指定,类名称,需要与之不同mfilename.

  • Version_number.—指定加载项文件的版本号为majorminor.bug.build.在文件系统中。您不需要指定版本号。如果您未指定版本号,MCC.默认情况下,设置版本号为1.0.0.0

    • 主要- 指定主要版本号。如果您没有指定数字,MCC.主要0.

    • 少数- 指定次版本号。如果您没有指定数字,MCC.少数0.

    • 错误-指定bug修复维护版本号。如果您没有指定数字,MCC.错误0.

    • 构建—构建号。如果您没有指定数字,MCC.构建0.

    注意

    Excel插件只能在运行在Windows上的MATLAB中创建®

    注意

    删除周围的单引号“excel: addin_name、类名、版本”当执行MCC.命令从DOS提示符。

MapReduce应用程序Hadoop.

MCC -H -W Hadoop:archivename.,配置:configFile生成一个可部署的归档文件,可以作为Hadoop的作业运行®

提示

你可以签发MCC.命令在matlab命令提示符或Windows或Linux中®系统的命令行。

万博1manbetx模拟(需要万博1manbetx编译器

示例

mcc - m选项mfilename.编译包含simulink的matlab应用程序万博1manbetx®模拟到独立应用程序。有关更多信息,请参阅使用Simulink编译器创建和部署脚本万博1manbetx(万博1manbetx仿真软件编译器)。

例子

创建一个独立的应用程序

MCC.-M.魔术魔法

创建一个不打开Command shell的独立应用程序(窗户唯一的)

MCC.-e.魔术魔法

使用系统级文件版本号创建独立应用程序(窗户唯一的)

在Windows中创建一个带有版本号的独立应用程序3.4.1.5

MCC.-W.“主要:version = 3.4.1.5”-T.链接:exe.mymagic.m

创建一个Excel插件

MCC.-W.'Excel:Myaddin,MyClass,1.0'-T.链接:lib魔术魔法

创建一个Excel添加系统级文件版本号(窗户唯一的)

在Windows中创建带有版本号的Excel加载项5.2.1.7

MCC.-W.'Excel:Myaddin,MyClass,Version = 5.2.1.7'-T.链接:lib-B.班级{myclass:mymagic.m}

创建COM组件

在Windows中创建一个带有版本号的COM组件7.10.1.3

MCC.-W.com: myCOMComponent, myClass版本= 7.10.1.3 '-T.链接:lib班级{myclass:mymagic.m}

创建一个Excel加载项MATLAB生产服务器

MCC.-W.“mpsxl: myDeployableArchvie myExcelClass, = 1.0的版本-T.链接:libmymagic.m

创建独立应用程序万博1manbetx模拟(需要万博1manbetx编译器

要为Simulink仿真创建一个独立的应用程序:万博1manbetx

使用Simulin万博1manbetxk创建一个Simulink模型。本例使用了该模型sldemo_suspn_3dof和Simulink一起发布的。万博1manbetx

创建一个使用api的MATLAB应用程序万博1manbetxSimulink Compiler™模拟模型。有关更多信息,请参阅使用可调谐参数部署模拟(万博1manbetx仿真软件编译器)。

功能deployparametertuning(outputfile,mbvariable)如果ischar(mbVariable) || isstring(mbVariable) mbVariable = str2double(mbVariable);结束如果isnan (mbVariable) | | ~ isa (mbVariable,'双')||〜Isscalar(MBVariable)Disp('mb必须是一个双标量或一个可以转换为双标量的字符串或char ');结束在=仿真软万博1manbetx件。SimulationInput ('sldemo_suspn_3dof');在= in.setvariable(“m”,mbvariable);在= si万博1manbetxmulink.compiler.configurefordeplopment(in);Out = SIM(IN);保存(outputfile,out);结束

使用MCC.从MATLAB应用程序创建独立应用程序。

MCC.-M.deployparametertuning.m

输入参数

崩溃

要编译的文件,指定为字符向量或字符串标量。

要编译的一个或多个文件,指定为空格分隔的文件名列表。

用于自定义输出的选项,指定为字符向量或字符串标量列表。

  • -

    将文件添加到可部署的存档使用- 路径要指定要添加的文件。多个-允许的选项。

    如果文件名指定为-,编译器在MATLAB路径上查找这些文件,因此指定完整路径名是可选的。这些文件未通过MBUILD.,因此可以包含数据文件等文件。

    如果使用该文件夹名称-选项时,该文件夹的全部内容将递归地添加到可部署归档文件中。例如,

    mcc -m hello.m -a ./testdir

    指定所有文件Testdir.,以及其子文件夹中的所有文件,都被添加到可部署归档文件中。中的文件夹子树Testdir.保留在可部署的存档中。

    如果文件名包括通配符模式,则仅添加与模式匹配的文件夹中的文件添加到可在可部署的存档中,并且不递归地处理给定路径的子文件夹。例如,

    mcc -m hello.m -a ./testdir/*

    指定所有文件./testdir.添加到?下的可部署归档文件和子文件夹./testdir.不是递归处理的。

    mcc -m hello.m -a ./testdir/*.m

    指定所有具有扩展名的文件00under./testdir.添加到的可部署归档文件和子文件夹./testdir.不是递归处理的。

    注意

    *是唯一支持的通配符。万博1manbetx

    当您使用-在编译时没有出现在MATLAB路径上的路径项被添加到应用程序的运行时路径中,以便在部署的代码执行时出现在路径上。

    当你使用的时候-选项指定资源的完整路径,基本路径将被保留,但有一些修改,但相对于运行时缓存目录的子目录,而不是用户的本地文件夹。缓存目录是在第一次执行应用程序时从可部署归档文件创建的。你可以使用isdeployed函数来确定应用程序是否正在部署模式下运行,并相应地调整路径。当-选项还会创建.Auth.文件用于授权目的。

    谨慎

    如果你使用-标记以包含不在MATLAB路径上的文件,包含该文件的文件夹将被添加到MATLAB依赖分析路径。因此,该文件夹中的其他文件可能包含在编译后的应用程序中。

    注意

    如果你使用-标记以包含自定义Java类,独立应用程序无需更改类路径只要Java类不是包的成员。这同样适用于JAR文件。但是,如果要添加的类是包的成员,则MATLAB代码需要对javaaddpath更新类路径使用包的父文件夹。

  • -B.

    生成Visual Basic®文件(.bas.)包含Microsoft Excel公式函数接口到COM对象生成的MATLAB编译器.当导入到工作簿Visual Basic代码时,该代码允许将MATLAB函数视为单元格公式函数。

  • -B.

    文件上替换文件MCC.命令行中包含指定文件的内容。使用

    -b filename [:,...,]

    捆绑文件名应该只包含MCC.命令行选项和相应的参数和/或其他文件名。该文件可能包含其他-B.选项。一个包可以包含接受名称和版本号的编译器选项的替换参数。看到使用捆绑包构建MATLAB代码(MATLAB编译器SDK)。

  • -C

    与the连用时-L.选项,禁止编译和链接生成的C包装器代码。当-C选项不能独立使用-L.选择。

  • -C

    不要在二进制文件中嵌入可部署的存档。

    注意

    -Cjava库忽略了标志。

  • -D.

    将输出放在指定的文件夹中。使用

    -D.外档

    将生成的文件指向外档

  • -f.

    使用指定的选项文件覆盖默认选项文件。它特别适用于C/ c++共享库、COM和Excel目标。使用

    - f文件名

    指定文件名作为选项文件调用时MBUILD..此选项允许您对编译器的不同调用使用不同的ANSI编译器。此选项是直接通行证MBUILD.

  • -G.-G.

    由生成的C/ c++代码包含调试符号信息Matlab Compiler SDK..它也会产生MBUILD.将适当的调试标志传递给系统C / C ++编译器。Debug选项允许您回溯到最终可以识别故障在初始化中是否发生的点MATLAB运行时,函数调用或终止例程。此选项不会让您使用C / C ++调试器调试Matlab文件。

  • -

    将新文件夹路径添加到包含的文件夹列表中。每一个-选项将文件夹附加到要搜索的路径列表的末尾。例如,

    —i —i 

    设置搜索路径,以便directory1首先搜索MATLAB文件,然后是directory2.此选项对于独立编译非常重要,Matlab Path不可用。

    如果与之结合使用-N选项,这是-选项将文件夹添加到编译路径的相同位置,它出现在MATLAB路径中,而不是在路径的头部。

  • k

    直接MCC.如果编译因错误而提前结束,则不删除输出文件。

    的默认行为MCC.如果命令未能成功执行,则要处理任何部分输出。

  • -M.

    直接MCC.以生成独立的应用程序。

  • -M.

    定义编译时选择。使用

    -m字符串

    通过字符串直接到MBUILD..此选项提供了一个有用的机制,用于定义编译时选项,例如,- m“-Dmacro =值”

    注意

    多个-M.期权不会累积;只有最右边的-M.使用选项。

  • -N

    -N选项自动识别数值命令行输入,并将它们视为MATLAB双精度。

  • -N

    通过-N清除除以下核心文件夹之外的所有文件夹的路径(此列表可能会随时间变化):

    • matlabroot \工具箱\ matlab.

    • matlabroot当地\工具箱\

    • matlabroot\ toolbox \编译器

    • matlabroot\工具箱\ \ bigdata共享

    通过-N还保留在编译时在Matlab路径上显示的此列表中的所有子文件夹。包括-N在命令行上,允许您从原始路径中替换文件夹,同时保留包含的文件夹的相对排序。还包括出现在原始路径上的包含包含文件夹的所有子文件夹。此外,-N选项保留路径上未包含的所有文件夹matlabroot\ Toolbox.

    使用时- n选项,使用-我选项以强制包含一个文件夹,该文件夹放置在编译路径的头部。用来- p有条件地包括文件夹及其子文件夹的选项;如果它们存在于MATLAB路径中,则它们以相同的顺序显示在编译路径中。

  • -O

    指定最终可执行文件的名称(仅限独立应用程序)。使用

    -o outputfile.

    命名最终的可执行输出MATLAB编译器.将适当的平台相关扩展添加到指定的名称中(例如,. exe适用于Windows独立应用程序)。

  • -P.

    与选项一起使用-N添加特定文件夹和子文件夹matlabroot\ Toolbox.编译matlab路径。这些文件以与MATLAB路径中显示的相同顺序添加。使用语法

    - n - p目录

    在哪里目录是要包含的文件夹。如果目录不是绝对路径,假设在当前工作文件夹下。

    • 如果包含文件夹-P.这位于原始MATLAB路径上,文件夹和原始路径上显示的所有子文件夹以相同的顺序添加到编译路径。

    • 如果包含文件夹-P.这不在原始MATLAB路径上,该文件夹被忽略。(你可以使用-迫使其包含。)

  • -R.

    提供MATLAB运行时选项。此选项仅在使用MATLAB Compiler构建独立应用程序时相关。语法如下:

    -R.选项

    选项

    描述

    目标

    日志文件,filename.

    指定日志文件名。

    MATLAB编译器

    -nodisplay

    抑制MATLABnodisplay.运行时警告。

    MATLAB编译器

    -nojvm.

    不要使用Java虚拟机(JVM)。

    MATLAB编译器

    -startmsg.

    可定制的用户消息显示在初始化时。

    MATLAB编译器独立应用程序

    -completemsg

    初始化完成时显示的可定制用户消息。

    MATLAB编译器独立应用程序

    谨慎

    当运行在Mac OS X.,如果你使用-nodisplay作为其中一个选项mclInitializeApplication,然后是呼叫mclInitializeApplication必须在调用之前发生麦克伦曼

    注意

    如果您指定了-R.从MATLAB Compiler SDK创建的库的选项,MCC.仍然没有错误编译并生成结果。但是-R.选项不适用于这些库,并且不做任何事情。

  • -

    标准行为MATLAB运行时每个类的实例都有自己的实例吗MATLAB运行时背景。该上下文包括用于变量的全局MATLAB工作空间,例如类中每个函数的路径和基本工作空间。如果创建了多个类的实例,则每个实例都会获得一个独立的上下文。这可确保在类的一个实例中对全局或基础工作空间所做的更改不会影响同一类的其他实例。

    在单身人士MATLAB运行时,类的所有实例共享上下文。如果创建了一个类的多个实例,它们将使用第一个实例创建的上下文,这将节省启动时间和一些资源。但是,一个实例对全局工作空间或基工作空间所做的任何更改都会影响所有类实例。例如,如果instance1创建一个全局变量A.在单身人士MATLAB运行时那么instance2可以使用变量A.

    单身MATLAB运行时仅支持以下产品针万博1manbetx对这些特定目标:s manbetx 845

    由Single万博1manbetxton支持的目标MATLAB运行时 创建一个单例MATLAB运行时通过....
    Excel插件 目标的默认行为是单例MATLAB运行时.您无需执行其他步骤。
    net程序集 目标的默认行为是单例MATLAB运行时.您无需执行其他步骤。
    COM组件
    • 使用Library Compiler应用程序,单击设置并添加-到了传递给MCC的其他参数字段。

    • 使用MCC.,通过-国旗。

    Java包
  • -T.

    指定输出目标阶段和类型。

    使用语法-T.目标定义输出类型。

    目标 描述
    编译:exe. 生成C/ c++包装器文件,并将C/ c++文件编译为适合链接到独立应用程序的对象形式。
    编译:lib 生成C/ c++包装器文件,并将C/ c++文件编译为适合于链接到共享库或DLL的对象形式。
    链接:exe. 相同编译:exe.并将对象文件链接到独立应用程序中。
    链接:lib 相同编译:lib并将对象文件链接到共享库或DLL中。

  • -U

    仅在开发计算机上为当前用户注册COM组件。参数只应用于通用的COM组件和Microsoft Excel插件目标。

  • -U

    构建可部署的存档(.ctf文件)MATLAB生产服务器

  • -v.

    显示编译步骤,包括:

    • MATLAB编译器版本号

    • 处理时的源文件名

    • 生成的输出文件在创建时的名称

    • 的调用MBUILD.

    -v.选项通过了-v.选项MBUILD.并显示有关的信息MBUILD.

  • -W.

    显示警告消息。使用语法

    - w选项(<味精>):

    控制警告的显示。

    语法

    描述

    -W列表

    列出具有缩写标识符的编译时警告及其状态。

    -w启用

    启用所有编译时警告。

    - w禁用[:<字符串>]

    禁用与之相关的特定编译时间警告<字符串>.省略可选<字符串>申请禁用对所有编译时警告的操作。

    -w启用[:<字符串>]

    启用与之相关的特定编译时警告<字符串>.省略可选<字符串>申请启用对所有编译时警告的操作。

    - w错误(:<字符串>]

    处理关联的特定编译时警告<字符串>是一个错误。省略可选<字符串>申请错误对所有编译时警告的操作。

    -w关闭[:<字符串>]

    对定义的特定错误消息关闭警告<字符串>.省略可选<字符串>申请关闭对所有运行时的行动。

    -w [:<字符串>]

    打开关联的运行时警告<字符串>.省略可选<字符串>申请对所有运行时的行动。

    您还可以在Matlab代码中打开或关闭警告。

    例如,关闭已部署应用程序的警告(使用isdeployed)在初创物,你写:

    如果部署警告结束

    要为已部署的应用程序打开警告,可以这样写:

    如果是ISDEPELED警告结束

    您还可以指定多个-W.选项。

    例如,如果你想禁用所有警告,除了重复_file.,你写:

    -w disable -w enable:repeated_file
    当你指定多个-W.选项,它们从左到右处理。

  • -W.

    控制功能包装的生成。使用语法

    -W.类型

    以控制函数包装器的生成为一组由编译器生成的MATLAB文件。您提供一个函数列表,编译器生成包装器函数和任何适当的全局变量定义。

  • -x.

    使用-x.在依赖性分析期间忽略公共MATLAB文件I / O功能读取的数据文件。对于MATLAB文件I / O函数的列表,当您使用时忽略其数据文件-x.选项,参见应用打包依赖分析(matlab)。有关如何使用的详细信息-x.选项,参见%#排除

  • - 我

    使用

    -y license.lic.

    使用指定的参数覆盖默认许可文件。

    注意

    - 我标志仅适用于命令行模式。

    >>!MCC -M Foo.m -y License.lic

提示

  • 在Windows上,您可以通过附加为目标文件生成系统级文件版本号version =Version_number.到目标生成MCC.语法。例如,看到使用系统级文件版本号(仅限Windows)创建独立应用程序

    Version_number.—指定目标文件的版本号majorminor.bug.build.在文件系统中。您不需要指定版本号。如果您未指定版本号,MCC.默认情况下,设置版本号为1.0.0.0

    • 主要- 指定主要版本号。如果您未指定版本号,MCC.主要1

    • 少数- 指定次版本号。如果您未指定版本号,MCC.少数0.

    • 错误-指定bug修复维护版本号。如果您未指定版本号,MCC.错误0.

    • 构建- 指定构建号码。如果您未指定版本号,MCC.构建0.

    中的独立应用程序和Excel外接程序支持此功万博1manbetx能MATLAB编译器.对于支持万博1manbetx的目标Matlab Compiler SDK.,请参阅提示部分MCC.

在R2006A之前介绍