主要内容

为外部C/ c++代码配置生成

将外部C/ c++代码与MATLAB集成®,则必须向代码生成器提供外部文件。这些文件由源文件、头文件、目标文件和用于构建生成代码的库文件组成。

您可以在命令行、函数内或通过设置代码生成配置对象属性来配置构建。在命令行上指定文件,以快速而简单的方式生成代码。当您希望为其他项目和代码部署预配置某个函数时,请在该函数中配置生成。配置对象提供了一组标准化的构建属性。属性指定外部文件MATLAB编码器™应用程序,或通过使用派生的类编码器。ExternalDependency.有关更多信息,请参见开发外部C/ c++代码接口

为代码生成提供外部文件

假设您想为使用coder.ceval调用C函数myCFn.的外部源文件和头文件myCFn驻留在文件夹中C: \定制.使用该命令:

codegenmyMatlabFnC: \ \ myCFn.c习俗C: \ \ myCFn.h习俗

配置从函数内部构建

本示例展示如何从MATLAB®函数中为外部C/ c++代码配置构建。在功能中配置构建,以便更容易地将其与其他项目集成。

假设你有一个顶级的MATLAB函数,myFn

函数[out] = myFn(in)% # codegeny = mySubFn(in);Out = y + 10;结束

这个函数调用另一个函数,mySubFn,它使用外部C代码foo.c.通过使用coder.updateBuildInfo而且coder.cinclude,您可以从内部设置所有必要的外部代码依赖项mySubFn

函数[y] = mySubFn(x)% # codegencoder.cinclude (“foo”);coder.updateBuildInfo (“addSourceFiles”“foo.c”);预初始化y为双类型。Y = 0;Y = code .ceval(“foo”, x);结束

您可以生成包含mySubFn无需配置额外的构建设置或在命令行指定外部文件输入。为顶层函数生成代码myFn,输入:

codegenmyFnarg游戏{5}报告
要查看报告,打开('codegen/mex/myFn/html/report.mldatx')

使用配置对象配置生成

通过设置代码生成配置对象的属性自定义构建。使用这些属性,您可以指定外部文件位置、自定义源代码和其他构建参数。

自定义代码属性 描述

CustomHeaderCode

指定出现在MATLAB代码生成的每个C/ c++头文件顶部附近的代码。

CustomInclude

在编译生成的代码时,指定要添加到包含路径的包含目录列表。提供绝对路径或相对于项目文件夹的路径。如果你的文件夹路径名称包含空格,你必须用双引号括起来:

cfg。CustomInclude =“C: \ Program Files \ MATLAB \工作”的

CustomLibrary

指定要与生成的代码链接的静态库或目标文件列表。

CustomSource

指定要编译并与生成的代码链接的源文件列表。构建过程首先在当前文件夹中查找源文件,然后在您指定的包含文件夹中查找CustomInclude

CustomSourceCode

指定出现在生成的C/ c++源文件顶部附近的代码,在函数之外。不要指定C静态函数定义。

例如,声明一个独立的代码配置对象并指定这些属性:

CFG = code .config(“自由”);cfg。CustomInclude =“C: \定制\ src C: \定制\ lib”;cfg。CustomSource =“cfunction.c”;cfg。CustomLibrary =“chelper。obj clibrary.lib”;cfg。CustomSourceCode =“# include“cgfunction.h””

属性在命令行上应用属性codegen命令使用配置论点:

codegen配置cfgmyMatlabFn

属性配置生成MATLAB编码器应用程序

  1. 打开MATLAB编码器应用程序,然后转到生成代码的一步。

  2. 生成代码页,打开生成对话框中,单击生成箭头

  3. 点击更多的设置

  4. 自定义代码选项卡,选择您的生成配置设置。点击帮助显示有关输入字段的信息。

另请参阅

||||||

相关的话题