主要内容

packNGo

包生成的代码在ZIP文件用于重定位

描述

例子

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

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

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

  • 头文件(例如,.h.HPP.文件)

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

  • 非营收相关的文件(例如,.dll.文件和。文本文件信息文件)为最终可执行文件所必需的

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

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

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

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

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

为了保证packNGo查找头文件,添加他们的路径buildInfo通过使用addincludepaths.函数。

请注意

通过使用使用的独立代码时codegen命令,你可以使用-包裹选项,可以在一个步骤中生成代码并将代码打包到ZIP文件中。

例子

全部收缩

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

  1. 将文件夹更改为代码生成文件夹。例如,使用MATLAB编码器™Codegen / DLL / Zingbit或者为Simu金宝applink.®代码生成,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','shierarchical',...'filename','portzingbit');

或者,可以将参数指定为包含该参数的文件夹的路径buildInfo.mat

packNGo (pathToBuildFolder,'packtype','shierarchical',...'filename','portzingbit');

名称值对参数

指定可选的逗号分隔对名称,价值论点。的名字参数名和价值是相应的价值。的名字必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:'packtype','flat','nestedzipfiles',true

如果“平”,将zip文件中的生成的代码文件作为一个单个扁平文件夹打包。该功能确实如此包:

  • 孩子buildInfo.mat文件。

  • CMakeLists.txt文件。

如果'等级',在主ZIP文件中地分层地包装生成的代码文件。层次结构包含顶部模型,引用的模型和共享实用程序文件夹。该功能还包装:

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

  • CMakeLists.txt文件在构建文件夹中。

例子:'packtype','平'

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

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

  • sdirfiles.zip.- 代码生成文件夹中和下的文件

  • otherFiles.zip—不在matlabroot.或者开始文件夹树

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

例子:'巢式己维斯',真实

如果不指定'文件名'-Value对,该函数包装在命名的zip文件中的文件modelOrFunctionName. zip并将ZIP文件放在代码生成文件夹中。

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

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

例子:'filename','/ home / user / mymodel.zip'

如果真的,仅包括在zip文件中构建代码所需的最小头文件。

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

例子:'Minimalheaders',真实

如果,不包括HTML.文件夹中的ZIP文件。

如果真的,包括HTML.文件夹中的ZIP文件。

例子:'IncludeReport',false

如果,终止解析错误。

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

例子:'ignoreparseerror',false

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

如果真的,不要因丢失文件错误而终止。

例子:“ignoreFileMissing”,假的

限制

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

  • 该函数不会包装可重用库子系统的源文件。

  • 可能包含不必要的文件。该函数可能会发现来自源路径的其他文件,即使未使用这些文件,也可以在构建信息中包含记录的路径。

介绍了R2006b