exponenta event banner

rtw_precompile_libs

Перестроение предварительно скомпилированных библиотек в модели без построения модели

Описание

пример

rtw_precompile_libs(model,build_spec) строит библиотеки в model, согласно build_spec и помещает библиотеки в предварительно скомпилированную папку. Сборки модели, использующие подход makefile шаблона, поддерживают rtw_precompile_libs функция. Построения модели подхода к инструментальной цепочке не поддерживают rtw_precompile_libs функция.

Примеры

свернуть все

Построение библиотек в my_model без здания my_model.

% Specify the library suffix
if isunix
   suffix = '_std.a';
elseif ismac
   suffix = '_std.a';
else
   suffix = '_vcx64.lib';
end
open_system(my_model);
set_param(my_model, 'TargetLibSuffix',suffix);

% Set the precompiled library folder
set_param(my_model, 'TargetPreCompLibLocation',fullfile(pwd,'lib'));

% Define a build specification that specifies 
% the location of the files to compile.
my_build_spec = [];
my_build_spec.rtwmakecfgDirs = {fullfile(pwd,'src')};

% Build the libraries in 'my_model'
rtw_precompile_libs(my_model,my_build_spec);

Входные аргументы

свернуть все

Имя модели, содержащей библиотеки, которые требуется построить.

Структура с полями, определяющими спецификацию построения. Поля, кроме rtwmakecfgDirs являются необязательными.

Аргументы пары «имя-значение»

Пример: build_spec.rtwmakecfgDirs = {fullfile(pwd, 'src')};

Укажите значения полей структуры для build_spec.

Использует Name и Location элементы makeInfo.library, как возвращено rtwmakecfg для указания имени и расположения предварительно скомпилированных библиотек. Если вы используете TargetPreCompLibLocation чтобы указать папку библиотеки, она переопределяет makeInfo.library.Location установка.

Указанная модель должна содержать S-функциональные блоки, использующие предварительно скомпилированные библиотеки, которые rtwmakecfg укажите файлы. Файл макета, создаваемый методом построения, содержит правила библиотеки только в том случае, если для преобразования требуются библиотеки.

Пример: build_spec.rtwmakecfgDirs = {fullfile(pwd, 'src')};

Суффикс должен содержать точку (.). Установите суффикс с помощью этого поля или TargetLibSuffix параметр. Если указан суффикс с обоими механизмами, TargetLibSuffix параметр переопределяет параметр этого поля.

Пример: build_spec.libSuffix = '_vcx64.lib';

Если установлено значение true, указывает, что функция оптимизирует библиотеки так, чтобы они компилировались только из целого кода. Применяется только к целям на основе ERT.

Пример: build_spec.intOnlyBuild = 'false';

Задает параметр для включения в rtwMake командной строки.

Пример: build_spec.makeOpts = '';

Этот массив ячеек структур определяет библиотеки для построения, rtwmakecfg функция не указывает. Определите каждую структуру с двумя полями, которые являются массивами символов:

  • libName - Название библиотеки без суффикса

  • libLoc - Расположение предварительно скомпилированной библиотеки

Подход построения (подход к цепочке инструментов или подход к шаблону makefile) позволяет указать другие библиотеки и способы их построения. Используйте это поле, если необходимо предварительно скомпилировать библиотеки.

Пример: build_spec.addLibs = 'libs_list';

Представлен в R2009b