Создайте файл определения для библиотеки C++
clibgen.generateLibraryDefinition(
создает MATLAB® Файл определения Live Code, используемый для генерации интерфейса MATLAB к библиотеке C++, заданной InterfaceGenerationFiles
,'Libraries',LibraryFiles
)InterfaceGenerationFiles
и LibraryFiles
. Для примеров, чтобы вызвать clibgen.generateLibraryDefinition
, см. раздел «Какие файлы у вас в библиотеке?» в советах».
Имя файла определения задается
. Для получения дополнительной информации об использовании этого файла смотрите Задать интерфейс MATLAB для библиотеки C++. По умолчанию libName
.mlxlibName
- имя первого файла, заданное в InterfaceGenerationFiles
. Если вы задаете более одного файла генерации интерфейса, то необходимо использовать PackageName
аргумент пары "имя-значение".
Используйте build
метод для создания интерфейса. Вам нужен MATLAB-поддерживаемый компилятор C++. Необходимо создать библиотеку интерфейсов с помощью того же компилятора, который использовался для создания библиотеки C++. Если ваша библиотека полностью определена исходными файлами (не использует общий файл библиотеки), то можно выбрать любой поддерживаемый компилятор C++, чтобы создать библиотеку интерфейсов.
clibgen.generateLibraryDefinition(
создает файл определения в библиотеке, заданной несколькими заголовочными файлами, исходными файлами и, при необходимости, общими файлами библиотеки.InterfaceGenerationFiles
,'Libraries',LibraryFiles
,'SupportingSourceFiles',SourceFiles
)
clibgen.generateLibraryDefinition(
создает файл определения для библиотеки, полностью заданной как InterfaceGenerationFiles
)InterfaceGenerationFiles
.
Если ваша библиотека включает файл общей библиотеки, необходимо задать 'Libraries'
аргумент.
clibgen.generateLibraryDefinition(
создает файл с помощью одного или нескольких аргументов пары "имя-значение". Используйте эту опцию с любыми комбинациями входных аргументов в предыдущих синтаксисах.InterfaceGenerationFiles
,___,Name,Value
)
Сохранение LibraryDefinition
definelibName объекта
в MAT-файл не поддерживается.
Избегайте символов, отличных от ASCII, в именах папок и файлов, так как некоторые установки локализации могут не поддерживать эти символы. Для получения информации о локали смотрите Концепции установки локализации для интернационализации.
Чтобы воссоздать файл определения библиотеки, сначала удалите
файл, а затем вызов libName define
.mlxclibgen.generateLibraryDefinition
.
Для получения информации об устранении неполадок смотрите Поиск и устранение проблем с интерфейсами C++.
Библиотека может содержать комбинации заголовочных файлов, исходных файлов CPP и общих библиотечных файлов. В этой таблице показано, как задать аргументы clibgen.generateLibraryDefinition
в зависимости от того, какие типы файлов определяют вашу библиотеку.
Какие файлы у вас в библиотеке? | АргументInterfaceGenerationFiles | Аргумент пары "имя-значение""Libraries" | Аргумент пары "имя-значение""SupportingSourceFiles" |
---|---|---|---|
Один файл заголовка и импорт файла библиотеки в Windows.
|
|
| |
Файл заголовка и файл общего объекта в Linux.
|
|
| |
Заголовочный файл и динамический файл общей библиотеки на macOS.
|
|
| |
Полностью определяется заголовочным файлом и
|
|
| |
Несколько заголовочных файлов, исходный файл и файл общей библиотеки. Создайте интерфейс с именем
|
|
| "A.cpp" |
Библиотека только для заголовков. Библиотека полностью определена в заголовочном файле и не имеет общего файла библиотеки.
|
| ||
Библиотека полностью определена в
|
| ||
[a] Поскольку у вас есть несколько заголовочных файлов, вы должны задать |
build
| clibgen.buildInterface
| doc