rtw_precompile_libs

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

Описание

пример

rtw_precompile_libs(model,build_spec) библиотеки сборок в model, согласно build_spec значения полей и места библиотеки в предварительно скомпилированной папке. Сборки модели, которые используют подход make-файла шаблона, поддерживают 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-function, которые пользуются предварительно скомпилированными библиотеками, который rtwmakecfg файлы задают. Make-файл, который генерирует подход сборки, содержит правила библиотеки, только если преобразование требует библиотек.

Пример: 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 — Местоположение для предварительно скомпилированной библиотеки

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

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

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