主要内容

将代码迁移到另一个开发环境

如果您需要将模型的静态和生成的代码文件重新定位到另一个开发环境中,请使用pack-and-go实用程序。当您的系统或集成开发环境(IDE)不包含MATLAB时,就会发生这种情况®和仿真软金宝app件®下载188bet金宝搏产品。

代码迁移

pack-n-go实用程序使用工具自定义代码生成后的构建过程packNGo函数查找并打包用于构建可执行映像的文件。这些文件被打包在一个压缩文件中,您可以使用标准重新定位和解压该文件邮政编码实用程序。

使用用户界面的包代码

使用用户界面打包和重定位模型代码:

  1. 在“配置参数”对话框中,选择包代码和工件.此选项将构建过程配置为运行packNGo函数在代码生成之后将生成的代码和工件打包以进行重新定位。

  2. Zip文件的名字字段,输入邮政编码将生成的代码和工件打包用于重新定位的文件。属性可以指定文件名,也可以不指定. zip扩展。如果您没有指定扩展名或其他扩展名. zip,邮政编码实用程序添加了. zip扩展。如果不指定值,构建过程将使用该名称模型. zip,在那里模型为其生成代码的顶级模型的名称。

  3. 应用更改并为模型生成代码。为了验证它可以重新安置,检查结果邮政编码文件。根据邮政编码您使用的工具,您可以打开并检查文件,而无需解包它。

  4. 安置邮政编码文件到目标开发环境,并解压缩该文件。

使用命令行接口包代码

使用命令行界面打包和重定位模型代码:

选择Zip文件的结构

在为模型构建生成和打包文件之前,请确定您是希望将文件打包为平面文件夹结构还是分层文件夹结构。默认情况下,packNGo函数将文件打包成一个单一的、扁平的文件夹结构。

如果…… 然后使用……
您正在将文件重定位到一个不使用生成的makefile的IDE中,或者代码不依赖于所需静态文件的相对位置 单平折结构
目标开发环境必须维护源环境的文件夹结构,因为它使用生成的makefile,或者代码取决于文件的相对位置 层次结构

如果使用层次结构,则packNGo函数创建两个级别的邮政编码文件,主邮政编码文件,该文件依次包含以下辅助文件邮政编码文件:

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

  • sDirFiles.zip- build文件夹中或文件夹下的文件,您在其中启动了模型的代码生成

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

辅助路径邮政编码文件是相对于主目录的根文件夹的邮政编码文件,维护源代码开发文件夹结构。

选择Zip文件的名称

默认情况下,packNGo函数命名主邮政编码文件模型.您可以选择指定一个不同的名称。如果指定了文件名并省略了文件类型扩展名,该函数将追加到您指定的名称。

Zip文件中的包模型代码

包模型代码文件使用PostCodeGenCommand配置参数,packNGo函数,并为模型构建信息对象。您可以设置包装操作来使用:

  • 一个系统生成的构建信息对象。

    在这种情况下,在生成模型代码之前,使用set_param设置配置参数PostCodeGenCommand的显式调用packNGo函数。例如:

    set_param (bdroot, ' PostCodeGenCommand”、“packNGo (buildInfo); ');

    在生成模型代码并将其写入磁盘之后,以及在生成makefile之前,此命令指示构建流程评估对的调用packNGo.此命令使用系统为当前选择的模型生成的构建信息对象。

  • 以编程方式构造的构建信息对象。

    在这种情况下,可以使用其他构建信息函数在构建信息对象中有选择地包括路径和文件,然后使用packNGo函数。例如:

    . . .myModelBuildInfo = RTW.BuildInfo;addSourceFiles(myModelBuildInfo, {'test1.c' 'test2.c' ' 'driver.c'});. . .packNGo (myModelBuildInfo);

下面的示例演示如何更改的默认行为packNGo

…… 指定…
将文件打包的结构改为分层结构 packNGo (buildInfo packType的“分层”);
重命名的主要邮政编码文件 packNGo (buildInfo“文件名”“zippedsrcs”);
将文件打包的结构更改为分层结构并重命名主文件邮政编码文件 packNGo (buildInfo packType的“分层”……
“文件名”“zippedsrcs”);
的Include路径中找到的头文件邮政编码文件 packNGo (buildInfo, minimalHeaders的假);
为解析错误和丢失的文件生成警告 packNGo (buildInfo ignoreParseError的真实……
“ignoreFileMissing”真正的);

请注意

packNGo函数可能会修改第一个函数传递的构建信息packNGo论点。作为包装模型代码的一部分,packNGo可以从源文件中找到附加的文件,并包括模型构建信息中记录的路径,并将它们添加到构建信息中。

检查生成的Zip文件

要验证它已准备好重新定位,请检查生成的文件邮政编码文件。根据邮政编码您使用的工具,您可以打开并检查文件,而无需解包它。如果解包文件,并且您将模型代码文件打包为层次结构,解包需要您解包主文件和辅助文件邮政编码文件。当你拆包的时候邮政编码文件,保存文件的相对路径。

重新定位并解压压缩文件

重新生成的邮政编码文件到目标开发环境,并解压缩该文件。

包装代码示例

这个示例展示了如何打包为示例模型生成的代码文件rtwdemo_rtwintro使用命令行界面:

  1. 将工作文件夹设置为可写文件夹。

  2. 打开模型rtwdemo_rtwintro并保存一个副本到您的工作文件夹。

  3. 输入以下MATLAB命令:

    set_param(‘rtwdemo_rtwintro’,‘PostCodeGenCommand’,……“packNGo (buildInfo,“packType”“分层”)的);

    由于字符数组的嵌套,必须使用双引号“packType”“分层”在指定调用的字符数组中packNGo

  4. 为模型生成代码。

  5. 检查生成的邮政编码文件,rtwdemo_rtwintro.zip.的邮政编码文件包含两个次要文件邮政编码文件,mlrFiles.zipsDirFiles.zip

  6. 检查邮政编码文件mlrFiles.zipsDirFiles.zip

  7. 安置邮政编码文件到目标环境并将其解压缩。

限制

packNGo函数

有关应用于此函数的限制的信息,请参见packNGo

带有非默认扩展名的可执行文件

如果构建过程使用模板生成文件方法,则packNGo使用由链接器工具指定的可执行文件扩展名来确定需要打包的二进制工件。

如果您生成的可执行文件的扩展名不是默认值,请检查该扩展名是否保存在与模板makefile相关联的工具链中。有关更多信息,请参见将模板生成文件与工具链关联

如果构建过程生成的可执行文件的扩展名与保存在工具链中的扩展名不同,packNGo不打包可执行文件。

相关的话题