主要内容

mbuild

编译和链接源文件MATLAB生成共享库

语法

mbuild [option1...optionNsourcefile1[...sourcefileN] [objectfile1...objectfileN] [libraryfile1...libraryfileN

描述

mbuild编译和链接客户编写的C或c++代码对MATLAB®生成的共享库。

其中一些选择(- f- g,- v)可在世纪挑战集团命令行,并传递给mbuild.其他的可以通过- m选项世纪挑战集团.有关- m选项,请参阅世纪挑战集团参考页面。

金宝app支持的源文件类型

金宝app支持的源文件类型有:

  • .c

  • . cpp

参数mbuild非选项且不属于受支持的源文件类型之一的文件将假定为库名,并传递给链接器。金宝app

选项

这个表列出了一组mbuild选项。如果没有列出任何平台,则该选项在两个UNIX上都可用®和窗户®

选项 描述
@ < rspfile >

(仅限Windows)包含文本文件的内容< rspfile >作为命令行参数mbuild

- c

编译。只创建一个目标文件。

- d <名称>

为C预处理器定义一个符号名。相当于一个#定义<名称>源文件中的指令。

- d <名称> = <值>

为C预处理器定义一个符号名和值。相当于一个#定义<名称> <值>源文件中的指令。

- f < optionsfile >

指定要使用的选项文件的位置和名称。覆盖了mbuild默认选项文件搜索机制。

- g

创建包含用于调试的附加符号信息的可执行文件。此选项禁用mbuild优化构建对象代码的默认行为(参见- o选项)。

- h (elp)

打印帮助mbuild

我<路径>

添加<路径>到要搜索的文件夹列表# include文件。

- l <名称>

与对象库链接。在Windows系统上,<名称>扩大到<名称> . lib自由<名称> . lib在UNIX系统上,则为自由<名称> . so自由<名称> . dylib.请勿在此开关后添加空格。

请注意

当链接库时,首先指定路径(用我<路径>,例如)。

- l <文件夹>

添加<文件夹>属性指定的用于搜索库的文件夹列表- l选择。在UNIX系统上,还必须设置运行时库路径。请勿在此开关后添加空格。

- n

没有执行模式。打印任何命令mbuild否则会执行,但实际上不执行任何一个。

- o

优化目标代码。通过在命令行中包含此选项,优化在默认情况下是启用的。如果- g选项出现时没有- o选项,优化被禁用。

-outdir <目录名>

将所有输出文件放入文件夹中<目录名>

与产出< resultname >

创建一个名为< resultname >.将自动添加适当的可执行扩展。覆盖了mbuild默认的可执行命名机制。

设置

以交互方式指定C/ c++编译器选项文件作为将来调用的默认值mbuild将其放置在用户配置文件文件夹中(由prefdir命令)。当指定此选项时,不接受其他命令行输入。

设置客户端mbuild_com

以交互方式指定COM编译器选项文件作为将来调用的默认值mbuild将其放置在用户配置文件文件夹中(由prefdir命令)。当指定此选项时,不接受其他命令行输入。

- u <名称>

删除C预处理器符号的任何初始定义<名称>.(逆- d选择。)

- v

详细的模式。在处理选项文件并考虑所有命令行参数之后,打印重要的内部变量的值。打印每个编译步骤和最后的链接步骤完全评估。

<名称> = <值>

为变量补充或覆盖选项文件变量<名称>.该选项在处理选项文件并考虑所有命令行参数之后进行处理。您可能需要使用shell的引号语法来保护在shell语法中有意义的字符,比如空格。在Windows中使用双引号(例如:COMPFLAGS = " opt1 opt2 "),在UNIX上则使用单引号(例如,CFLAGS = ' opt1 opt2 ').

通常使用此选项来补充已经定义的变量。要做到这一点,通过前缀a引用变量(例如,COMPFLAGS = " $ COMPFLAGS opt2 "在Windows或CFLAGS = ' $ CFLAGS opt2 '在UNIX shell)。

对于基于gcc/g++的MinGW-w64编译器,使用单引号().

例子

修改默认的C/ c++编译器MATLAB编译器SDK™,使用

mbuild设置

编译和连接外部C程序foo.clibfoo,使用

mbuild foo.c - l。-lfoo(在UNIX上)mbuild foo.c libfoo. c自由(在Windows上)

这个假设foo.c上面生成的库在当前工作文件夹中。

之前介绍过的R2006a