主要内容

packNGo

在ZIP文件中打包生成的代码以便重新定位

描述

例子

packNGo (buildInfo名称,值将代码文件打包到一个压缩的ZIP文件中,以便您可以在另一个开发环境中重新定位、解包和重新构建它们。名称-值对列表是可选的。

ZIP文件中的代码文件类型包括:

  • 源文件(例如,.c而且. cpp文件)

  • 头文件(例如,.h而且. hpp文件)

  • 包含构建信息对象的mat文件(.mat文件)

  • 非构建相关的文件(例如,. dll文件和. txt信息文件)是最终可执行文件所必需的

  • 生成二进制文件(例如,可执行文件). exe文件或动态链接库. dll).

    代码生成器在ZIP文件中包含构建生成的二进制文件(如果存在)。的ignoreFileMissing属性不适用于生成的二进制文件。

使用此函数重新定位文件。然后,您可以针对特定的目标环境重新编译这些文件,或者在一个开发环境中重新构建它们®没有安装。默认情况下,该函数将文件打包为代码生成文件夹中的ZIP文件中的平面文件夹结构。可以通过指定名称-值对自定义输出。在重新定位ZIP文件之后,使用标准ZIP实用程序来解压缩文件。

packNGo函数可能会修改在第一个中传递的构建信息packNGo论点。作为代码打包的一部分,packNGo可以从源文件中查找其他文件,并包括在构建信息中记录的路径。一旦这些文件被找到packNGo将它们添加到构建信息中。

以确保packNGo查找头文件,将它们的路径添加到buildInfo通过使用addIncludePaths函数。

请注意

类生成独立代码时codegen命令时,可以使用选项可以在单个步骤中生成代码并将代码打包到ZIP文件中。

例子

全部折叠

构建过程完成后,可以从命令窗口运行packNGo。使用packNGo用于ZIP文件打包文件中生成的代码portzingbit.zip.维护相对的文件层次结构。

  1. 将文件夹更改为代码生成文件夹。例如,使用MATLAB编码器™codegen / dll / zingbit或仿真软件金宝app®代码生成,zingbit_grt_rtw

  2. 加载buildInfo对象,该对象描述构建。

  3. 运行packNGo的属性设置packType而且文件名

cdcodegen / dll / zingbit;负载buildInfo.matpackNGo (buildInfo“packType”“分层”...“文件名”“portzingbit”);

如果从代码生成窗格配置ZIP文件打包,则代码生成器使用packNGo在构建过程中输出ZIP文件。

  1. 选择代码生成>包代码和构件.可选地,提供了一个Zip文件的名字.要应用更改,请单击好吧

  2. 构建的模型。在构建过程结束时,代码生成器输出ZIP文件。ZIP文件中的文件夹结构是分层的。

方法配置ZIP文件打包set_param函数,代码生成器使用packNGo在构建过程中输出ZIP文件。

为模型配置ZIP文件打包zingbit在文件中zingbit.zip,可以使用set_param函数。

set_param (“zingbit”“PostCodeGenCommand”...“packNGo (buildInfo);”);

输入参数

全部折叠

在构建过程中,代码生成器放置位置buildInfo.mat在代码生成文件夹中。这个mat文件包含buildInfo对象。对象提供的信息packNGo用来生成ZIP文件。

您可以将参数指定为buildInfo对象:

负载buildInfo.matpackNGo (buildInfo“packType”“分层”...“文件名”“portzingbit”);

或者,您可以将参数指定为buildInfo.mat文件:

buildInfoFile = fullfile (pathToBuildFolder、“buildInfo.mat”);packNGo (buildInfoFile packType,“层次”,…“文件名”、“portzingbit”);

或者,您可以将参数指定为包含buildInfo.mat

packNGo (pathToBuildFolder,“packType”、“层次”,…“文件名”、“portzingbit”);

名称-值对的观点

指定逗号分隔的可选对名称,值参数。的名字参数名称和价值对应的值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:‘packType’,‘平’,‘nestedZipFiles’,真的

如果“平”,将生成的代码文件打包到ZIP文件中作为一个单一的平面文件夹。

如果“分层”,将生成的代码文件分层打包在一个主ZIP文件中。层次结构包含顶级模型、引用模型和共享实用程序文件夹。函数还封装了相应的buildInfo.mat文件夹中的文件。

例子:‘packType’,‘平’

如果真正的,创建一个包含三个辅助ZIP文件的主ZIP文件:

  • mlrFiles.zip-你的matlabroot文件夹树

  • sDirFiles.zip-代码生成文件夹内和文件夹下的文件

  • otherFiles.zip-所需文件不在matlabroot开始文件夹树

如果,创建一个包含文件夹的主ZIP文件,例如,您的代码生成文件夹和matlabroot

例子:“nestedZipFiles”,真的

如果不指定“文件名”-value pair时,该函数将文件打包到一个名为modelOrFunctionName. zip并将ZIP文件放在代码生成文件夹中。

如果您指定“文件名”的价值,的名字,函数创建的名字. zip在代码生成文件夹中。

要为主ZIP文件指定另一个位置,请提供该位置的绝对路径,fullPath/的名字. zip

例子:“文件名”、“/ home / user / myModel.zip”

如果真正的,只包含在ZIP文件中构建代码所需的最小头文件。

如果,包括在ZIP文件的include路径上找到的头文件。

例子:“minimalHeaders”,真的

如果,不包括超文本标记语言ZIP文件中的文件夹。

如果真正的,包括超文本标记语言ZIP文件中的文件夹。

例子:“includeReport”,假的

如果,解析错误时终止。

如果真正的,不要在解析错误时终止。

例子:“ignoreParseError”,假的

如果,在缺少文件错误时终止。

如果真正的,不要在丢失文件错误时终止。

例子:“ignoreFileMissing”,假的

限制

  • 该函数只操作源文件,例如* . c* . cpp,* . h文件。该函数不支持编译标志、定义或makefile金宝app。

  • 该函数不为可重用库子系统打包源文件。

  • 可能包含不必要的文件。该函数可能会从源路径中找到其他文件,并包括构建信息中记录的路径,即使这些文件没有被使用。

介绍了R2006b