Создайте файл определения для библиотеки C++
clibgen.generateLibraryDefinition(
создает файл определения MATLAB® Live Кода, используемый, чтобы сгенерировать интерфейс MATLAB к библиотеке C++, заданной InterfaceGenerationFiles
,'Libraries',LibraryFiles
)InterfaceGenerationFiles
и LibraryFiles
. Для примеров, чтобы вызвать clibgen.generateLibraryDefinition
, см., "Какие файлы вы имеете в своей библиотеке?" в Советах.
Имя файла определения является define
. Для получения дополнительной информации об использовании этого файла смотрите, Задают Интерфейс 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-файл не поддерживается.
Избегайте символов non-ASCII в папке и именах файлов, когда некоторые установки локализации не могут поддержать те символы. Для получения информации о локали смотрите Концепции Установки локализации для Интернационализации.
Чтобы воссоздать файл определения библиотеки, сначала удалите define
файл, затем вызовите libName
.mlxclibgen.generateLibraryDefinition
.
Для поиска и устранения неисправностей информации смотрите Поиск и устранение проблем Проблемы Интерфейса C++.
Ваша библиотека может содержать комбинации заголовочных файлов, исходных файлов CPP, и совместно использовала файлы библиотеки. Эта таблица показывает, как установить аргументы на clibgen.generateLibraryDefinition
в зависимости от того, какие типы файлов задают вашу библиотеку.
Какие файлы вы имеете в своей библиотеке? | АргументInterfaceGenerationFiles | Аргумент пары "имя-значение""Libraries" | Аргумент пары "имя-значение""SupportingSourceFiles" |
---|---|---|---|
Один заголовочный файл и файл библиотеки импорта на Windows.
|
|
| |
Заголовочный файл и файл общего объекта на Linux.
|
|
| |
Заголовочный файл и динамический совместно использованный файл библиотеки на macOS.
|
|
| |
Полностью заданный заголовочным файлом и
|
|
| |
Несколько заголовочных файлов, исходный файл и совместно использованный файл библиотеки. Создайте интерфейс под названием
|
| "A.cpp" | |
Библиотека только для заголовка. Библиотека полностью задана в заголовочном файле и не имеет совместно использованного файла библиотеки.
|
| ||
Библиотека полностью задана в
|
| ||
build
| clibgen.buildInterface
| doc