Разделяемая библиотека является набором классов и функций, динамически загруженных приложением во время выполнения. Интерфейс TheMATLAB® на C++ совместно использовал библиотеки поддержек библиотеки, содержащие функциональность, заданную в заголовочных файлах C++.
MATLAB поддерживает динамические библиотеки по всем поддерживаемым платформам.
Платформа | Разделяемая библиотека | Расширение файла |
---|---|---|
Microsoft® Windows® | Файл динамически подключаемой библиотеки | .dll |
Linux® | Файл общего объекта | .so |
Apple macOS | Динамическая разделяемая библиотека | .dylib |
Не каждый компилятор C++ поддерживает каждую функцию C++. Например, некоторые компиляторы не поддерживают использование std::cout
.
Чтобы создать MATLAB соединяют интерфейсом с библиотекой, вам нужен установленный, поддерживаемый MATLAB компилятор C++. Для актуального списка поддерживаемых компиляторов см. Поддерживаемые и Совместимые Компиляторы. Необходимо создать интерфейсную библиотеку с помощью того же компилятора, который использовался, чтобы создать пользовательскую библиотеку. Если ваша библиотека только для заголовка (не пользуется библиотекой импорта .lib
), то можно выбрать, любой поддержал компилятор C++, чтобы создать интерфейсную библиотеку.
Библиотека и ее зависимости должны быть на вашем системном пути или пути поиска файлов во время выполнения (rpath). Чтобы проверить, что библиотека находится на этом пути, ищите пути в выводе следующей команды MATLAB.
syspath = split(getenv('path'),';')
Чтобы установить путь библиотеки времени выполнения res
временно, запустите одну из следующих команд, прежде чем вы запустите MATLAB.
Windows Command Processor:
set PATH=res;%PATH%
Оболочка C Linux:
setenv LD_LIBRARY_PATH res
Оболочка Bourne Linux:
LD_LIBRARY_PATH=res:LD_LIBRARY_PATH export LD_LIBRARY_PATH
оболочка C macOS:
setenv DYLD_LIBRARY_PATH res
Оболочка Bourne macOS:
DYLD_LIBRARY_PATH=res:DYLD_LIBRARY_PATH export DYLD_LIBRARY_PATH
Если вы используете эти команды, то необходимо установить путь каждый раз, когда вы открываете подсказку операционной системы. Чтобы добавить библиотеку в системный путь постоянно, обратитесь к своей документации по операционной системе.