exponenta event banner

Настройка сборки для внешнего кода C/C + +

Для интеграции внешнего кода C/C + + с MATLAB ® необходимо предоставить внешние файлы генератору кода. Эти файлы состоят из исходных файлов, файлов заголовков, файлов объектов и файлов библиотек, которые используются для создания созданного кода.

Можно настроить построение в командной строке, в функции или задав свойства объекта конфигурации создания кода. Укажите файлы в командной строке для быстрого и простого создания кода. Если требуется предварительно настроить функцию для других проектов и развертываний кода, настройте компоновку в рамках функции. Объект конфигурации предоставляет стандартизированный набор свойств построения. Можно также указать внешние файлы с помощью приложения MATLAB Coder™ App или с помощью класса, производного от coder.ExternalDependency. Дополнительные сведения см. в разделе Разработка интерфейса для внешнего кода C/C + +.

Предоставление внешних файлов для создания кода

Предположим, что требуется создать код для функции, использующей coder.ceval для вызова функции C myCFn. Файлы внешних источников и заголовков для myCFn находиться в папке C:\custom. Используйте следующую команду:

codegen myMatlabFn C:\custom\myCFn.c C:\custom\myCFn.h

Настройка построения из функции

В этом примере показано, как сконфигурировать сборку для внешнего кода C/C + + из функции MATLAB ®. Настройте компоновку в рамках функции, чтобы упростить ее интеграцию с другими проектами.

Предположим, что имеется функция MATLAB верхнего уровня, myFn:

function [out] = myFn(in)
%#codegen
y = mySubFn(in);
out = y + 10;
end


Эта функция вызывает другую функцию, mySubFn, который использует внешний код C foo.c. С помощью coder.updateBuildInfo и coder.cinclude, вы устанавливаете все необходимые внешние зависимости кода из mySubFn.

function [y] = mySubFn(x)
%#codegen
coder.cinclude('foo.h');
coder.updateBuildInfo('addSourceFiles', 'foo.c');
% Pre-initialize y to double type.
y = 0;
y = coder.ceval('foo',x);
end


Можно создать код, содержащий mySubFn без необходимости настройки дополнительных параметров построения или указания входных данных внешних файлов в командной строке. Создание кода для функции верхнего уровня myFn, введите:

codegen myFn -args {5} -report
Code generation successful: To view the report, open('codegen/mex/myFn/html/report.mldatx').

Настройка построения с помощью объекта конфигурации

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

Свойство пользовательского кодаОписание

CustomHeaderCode

Укажите код, который будет отображаться в верхней части каждого файла заголовка C/C + +, созданного из кода MATLAB.

CustomInclude

Укажите список каталогов включения для добавления к пути включения при компиляции созданного кода. Укажите абсолютный путь или путь к папке проекта. Если путь к папке содержит пробелы, его необходимо заключить в двойные кавычки:

cfg.CustomInclude = '"C:\Program Files\MATLAB\work"'

CustomLibrary

Укажите список файлов статических библиотек или объектов для связи с созданным кодом.

CustomSource

Укажите список исходных файлов для компиляции и связи с созданным кодом. Процесс построения выполняет поиск исходных файлов сначала в текущей папке, а затем в папках включения, указанных в CustomInclude.

CustomSourceCode

Укажите код, который будет отображаться в верхней части создаваемого исходного файла C/C + + вне функции. Не указывайте определение статической функции C.

Например, объявите автономный объект конфигурации кода и укажите следующие свойства:

cfg = coder.config('lib');
cfg.CustomInclude = 'C:\custom\src C:\custom\lib';
cfg.CustomSource = 'cfunction.c';
cfg.CustomLibrary = 'chelper.obj clibrary.lib';
cfg.CustomSourceCode = '#include "cgfunction.h"';

Примените свойства в командной строке с помощью codegen с помощью команды -config аргумент:

codegen -config cfg myMatlabFn

Настройка построения с помощью приложения кодера MATLAB

  1. Откройте приложение кодера MATLAB и перейдите к шагу Создать код.

  2. На странице «Создать код», чтобы открыть диалоговое окно «Создать», щелкните стрелку «Создать».

  3. Щелкните Дополнительные параметры.

  4. На вкладке Пользовательский код выберите параметры конфигурации сборки. Нажмите кнопку Справка, чтобы просмотреть информацию о полях ввода.

См. также

| | | | | |

Связанные темы