创建c++库的定义文件
clibgen.generateLibraryDefinition (
创建一个MATLAB®Live Code定义文件用来生成一个MATLAB接口,由c++库定义InterfaceGenerationFiles
“库”,LibraryFiles
)InterfaceGenerationFiles
和LibraryFiles
.例如clibgen.generateLibraryDefinition
,参见“您的库中有哪些文件?提示.
定义文件的名称为定义
.有关使用此文件的详细信息,请参见为c++库定义MATLAB接口.默认情况下,库名
.mlx库名
中是否指定了第一个文件的名称InterfaceGenerationFiles
.如果指定多个接口生成文件,则必须使用PackageName
名称-值对的论点。
使用构建
方法创建接口。你需要一个matlab支持的c++编万博1manbetx译器。您必须使用与构建c++库相同的编译器来构建接口库。如果您的库完全由源文件定义(不使用共享库文件),那么您可以选择任何受支持的c++编译器来构建接口库。万博1manbetx
clibgen.generateLibraryDefinition (
创建由多个头文件、源文件以及(如果需要的话)共享库文件定义的库的定义文件。InterfaceGenerationFiles
“库”,LibraryFiles
“S万博1manbetxupportingSourceFiles”,万博1manbetxSupportingSourceFiles
)
clibgen.generateLibraryDefinition (
为完全定义的库创建定义文件InterfaceGenerationFiles
)InterfaceGenerationFiles
.
如果库包含共享库文件,则必须指定“库”
论点。
clibgen.generateLibraryDefinition (
使用一个或多个名称-值对参数创建文件。将此选项与前面语法中的任何输入参数组合一起使用。InterfaceGenerationFiles
,___,名称,值
)
储蓄LibraryDefinition
对象definelibName
不支持。万博1manbetx
避免在文件夹和文件名中使用非ascii字符,因为某些区域设置可能不支持这些字符。万博1manbetx有关区域设置的信息,请参见国际化的区域设置概念.
要重新创建库定义文件,调用clibgen.generateLibraryDefinition
与名称-值参数OverwriteExistingDefinitionFiles
设置为true。当您使用此选项时,MATLAB将删除文件,包括您可能对文件进行的编辑。
有关故障处理信息,请参见排除c++库定义问题.
库可能包含头文件、CPP源文件和共享库文件的组合。该表显示了如何将参数设置为clibgen.generateLibraryDefinition
取决于定义库的文件类型。
你的图书馆里有什么文件? |
论点InterfaceGenerationFiles |
名称-值参数“库” |
名称-值参数“万博1manbetxSupportingSourceFiles” |
---|---|---|---|
Windows上的单个头文件和导入库文件。
|
|
|
|
Linux上的头文件和共享对象文件。
|
|
|
|
的头文件和动态共享库文件macOS.
|
|
|
|
完全由头文件和定义
例子:头和CPP源文件 |
|
|
|
多个头文件、一个源文件和一个共享库文件。创建接口命名
|
|
|
“A.cpp” |
只包括头文件的库。库完全定义在头文件中,没有共享库文件。
例子:只包括头文件进行文件 |
|
||
标准库完全定义在
|
|
||
[一个]因为有多个头文件,所以必须设置 |