Сгенерируйте MATLAB Data API C++ разделяемая библиотека и создайте приложение C++

Поддерживаемая платформа: Windows®, Linux®, Mac

То В этом примере показано, как использовать приложение Library Compiler, чтобы создать C++, совместно использовало библиотеку для функции MATLAB®. Можно затем передать сгенерированный пакет разработчику, который ответственен за интеграцию его в приложение. Этот пример также показывает, как вызвать совместно использованную библиотеку C++ из приложения C++. Целевая система не требует лицензированной копии MATLAB.

Создайте функции в MATLAB

В MATLAB исследуйте код MATLAB, который вы хотите упакованный. В данном примере открытый addmatrix.m расположенный в matlabroot\extern\examples\compilersdk\c_cpp\matrix.

 addmatrix.m

В командной строке MATLAB введите:

addmatrix([1 4 7; 2 5 8; 3 6 9], [1 4 7; 2 5 8; 3 6 9])

Выход:

 ans =
     2     8    14
     4    10    16
     6    12    18

Создайте C++ разделяемая библиотека Используя приложение Library Compiler

  1. На вкладке MATLAB Apps, на ультраправом из раздела Apps, кликают по стреле. В Application Deployment нажмите Library Compiler.

    В качестве альтернативы можно открыть приложение Library Compiler из командной строки MATLAB путем ввода:

    libraryCompiler

  2. В разделе Type панели инструментов нажмите C++ Shared Library.

    В окне проекта приложения Library Compiler задайте файлы приложения MATLAB, которое вы хотите развернуть.

    1. В разделе Exported Functions панели инструментов щелкнуть.

    2. В окне Add Files просмотрите к папке в качестве примера и выберите функцию, которую вы хотите группировать. Нажмите Open.

    Функция добавляется к списку экспортируемых файлов функции. Повторите этот шаг, чтобы группировать несколько файлов в том же приложении.

    В данном примере перейдите к matlabroot\extern\examples\compilersdk\c_cpp\matrix и выберите addmatrix.m.

  3. В разделе Packaging Options панели инструментов решите, включать ли инсталлятор MATLAB Runtime в сгенерированное приложение путем выбора одной из опций:

    • Runtime downloaded from web — Сгенерируйте инсталлятор, который загружает MATLAB Runtime и устанавливает его наряду с развернутым приложением MATLAB. Можно задать имя файла инсталлятора.

    • Runtime included in package — Сгенерируйте приложение, которое включает инсталлятор MATLAB Runtime. Можно задать имя файла инсталлятора.

      Примечание

      В первый раз, когда вы выбираете эту опцию, вам предлагают загрузить инсталлятор MATLAB Runtime.

Задайте разделяемые настройки библиотеки

  1. Поле Library Name автоматически заполняется с addmatrix как имя упакованной разделяемой библиотеки. Переименуйте его как libmatrix. То же имя выполняется в реализации разделяемой библиотеки.

  2. Добавьте файлы MATLAB, чтобы сгенерировать демонстрационные файлы драйвера C++. Несмотря на то, что файлы драйвера C++ не необходимы, чтобы создать совместно использованные библиотеки, они используются, чтобы продемонстрировать, как Реализовать MATLAB Data API C++ Разделяемая Библиотека с Приложением Драйвера.

    В разделе Samples выберите Create New Sample и нажмите addmatrix.m. Отредактируйте файл MATLAB, который открывается.

    % Sample script to demonstrate execution of function a = addmatrix(a1, a2)
    a1 = [1 4 7; 2 5 8; 3 6 9]; % Initialize a1 here
    a2 = a1; % Initialize a2 here
    a = addmatrix(a1, a2);

    Сохраните файл и возвратитесь к приложению Library Compiler. Для получения дополнительной информации и ограничения, смотрите Демонстрационное Создание Файла Драйвера.

  3. Выберите тип API для совместно использованных библиотек сгенерированного C++. В разделе API selection в нижней части выберите Create interface that uses the MATLAB Data API. Для получения дополнительной информации смотрите Выбор API для C++ Разделяемая Библиотека.

Настройте приложение и его внешний вид

Можно настроить инсталлятор, настроить приложение и добавить больше информации о приложении можно следующим образом:

  • Информация о библиотеке Информация о развертываемом приложении. Можно также настроить внешний вид приложения путем изменения значка приложения и экрана-заставки. Сгенерированный установщик использует эту информацию, чтобы заполнить установленные метаданные приложений. Смотрите Настраивают Инсталлятор.

  • Additional installer options — Путь к стандартной установке для сгенерированного инсталлятора и пользовательского выбора логотипа. Смотрите Изменение Путь к Установке.

  • Files required for your library to run — Дополнительные требуемые для запуска сгенерированного приложения файлы. Эти файлы включены в сгенерированное установщиком приложения. Смотрите Управляют Необходимыми Файлами в Проекте Компилятора.

  • Files installed for your end user — Файлы, которые установлены с вашим приложением. Эти файлы включают:

    • Сгенерированный readme.txt

    • Сгенерированный исполняемый файл для целевой платформы

    Смотрите задают файлы, чтобы установить с приложением

Группируйте приложение

  1. Чтобы сгенерировать пакетное приложение, нажмите Package.

    В диалоговом окне Save Project задайте местоположение, чтобы сохранить проект.

  2. В диалоговом окне Package проверьте, что Open output folder when process completes выбран.

    Когда упаковочный процесс будет завершен, исследуйте сгенерированный результат.

    • Три папки сгенерированы в целевом месте папки: for_redistribution, for_redistribution_files_only, и for_testing.

      Для получения дополнительной информации о файлах, сгенерированных в этих папках, смотрите Файлы, Сгенерированные После Упаковки функций MATLAB.

    • PackagingLog.txt — Файл журнала сгенерирован MATLAB Compiler™.

Реализуйте MATLAB Data API C++ разделяемая библиотека с приложением драйвера

После упаковки вашего C++ совместно использовал библиотеки, можно вызвать их из приложения C++. Приложение C++, которое вы создаете, использует демонстрационный код драйвера C++, сгенерированный во время упаковки. Код драйвера C++ вызывает совместно использованные библиотеки C++, и он основан на демонстрационном файле MATLAB, который вы выбрали на предыдущих шагах настройки.

Эти шаги также объяснены в GettingStarted.html файл в for_redistribution_files_only папка. Перед запуском убедитесь, что вы, Установка и Конфигурирует MATLAB Runtime, и что вам установили компилятор C++.

  1. Скопируйте и вставьте сгенерированный файл кода драйвера C++ от for_redistribution_files_only\samples папка в for_redistribution_files_only\v2\generic_interface папка создала, когда вы создали разделяемую библиотеку.

  2. Используйте системную командную строку, чтобы перейти к generic_interface папка, где вы скопировали сгенерированный демонстрационный файл кода драйвера C++.

  3. Скомпилируйте и соедините использование приложения mbuild в системной командной строке.

    mbuild addmatrixSample1.cpp
  4. От системной командной строки, запущенной приложение.

    addmatrixSample1.exe

Примечание

Для получения информации о том, как получить массив структур, массив ячеек или вектор символов, от feval вызовите, смотрите файлы subtractmatrix.m и subtractmatrix_mda.cpp в matlabroot\extern\examples\compilersdk\c_cpp\matrix.

Смотрите также

| |

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте