主要内容

packNGo

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

描述

例子

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

ZIP文件可以包括以下类型的文件:

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

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

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

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

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

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

  • CMake配置文件(CMakeLists.txt),用于为编译器环境生成生成文件或项目。

使用此函数重新定位文件。然后,您可以针对特定的目标环境重新编译这些文件,或者在使用MATLAB的开发环境中重新构建它们®没有安装。默认情况下,该函数将文件打包为代码生成文件夹中的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文件中的文件夹结构是分层的。

如果您使用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文件中,作为一个单一的平面文件夹。该函数的包:

  • 孩子buildInfo.mat文件。

  • CMakeLists.txt文件。

如果“分层”,将生成的代码文件分层打包到主ZIP文件中。层次结构包含顶层模型、引用模型和共享实用程序文件夹。该函数还包括:

  • 相应的buildInfo.mat文件夹的文件。

  • CMakeLists.txt生成文件夹中的文件。

例子:‘packType’,‘平’

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

  • mlrFiles.zip-文件在您的matlabroot文件夹树

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

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

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

例子:“nestedZipFiles”,真的

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

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

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

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

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

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

例子:“minimalHeaders”,真的

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

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

例子:“includeReport”,假的

如果,在解析错误时终止。

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

例子:“ignoreParseError”,假的

如果,在丢失文件错误时终止。

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

例子:“ignoreFileMissing”,假的

限制

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

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

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

  • MATLAB编码器,该函数不打包使用默认配置设置生成的示例主源文件和头文件。要打包示例主文件,请配置代码生成以生成和编译示例主函数,生成代码,然后打包构建文件。

  • packNGo没有打包为MEX目标生成的代码。

介绍了R2006b