packNGo

Сгенерированный код пакета в zip-файле для перемещения

Синтаксис

packNGo(buildInfo,{Name,Value})

Описание

пример

packNGo(buildInfo,{Name,Value}) группирует файлы кода в сжатом zip-файле так, чтобы можно было переместить, распаковать и восстановить их в другой среде разработки. Список пар "имя-значение" является дополнительным.

Типы файлов кода в zip-файле включают:

  • Исходные файлы (например, .c и файлы .cpp)

  • Заголовочные файлы (например, .h и файлы .hpp)

  • MAT-файл, который содержит информационный объект сборки (.mat matfile

  • Связанные с несборкой файлы (например, файлы .dll и .txt информационные файлы) требуемый для итогового исполняемого файла

  • Сгенерированные сборкой двоичные файлы (например, исполняемый файл .exe или динамически подключаемая библиотека .dll).

    Генератор кода включает сгенерированные сборкой двоичные файлы (если есть) в zip-файл. ignoreFileMissing свойство не применяется к сгенерированным сборкой двоичным файлам.

Используйте эту функцию, чтобы переместить файлы. Можно затем перекомпилировать файлы для определенного целевого окружения или восстановить их в среде разработки, в которой не установлен MATLAB®. По умолчанию, функциональные пакеты файлы как плоская структура папок в zip-файле в папке генерации кода. Можно настроить вывод путем определения пар "имя-значение". После перемещения zip-файла используйте стандартную утилиту zip, чтобы распаковать сжатый файл.

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

Примеры

свернуть все

После того, как процесс сборки завершен, можно запустить packNGo из Командного окна. Используйте packNGo для упаковки zip-файла сгенерированного кода в файле portzingbit.zip zip. Поддержите иерархию файла прямого доступа.

  1. Измените папки на папку генерации кода. Например, с помощью MATLAB Coder™, codegen/dll/zingbit, или для генерации кода Simulink®, zingbit_grt_rtw.

  2. Загрузите объект buildInfo, который описывает сборку.

  3. Запустите packNGo с настройками свойства для packType и fileName.

cd codegen/dll/zingbit;
load buildInfo.mat
packNGo(buildInfo,{'packType', 'hierarchical', ...
   'fileName','portzingbit'});

Если вы конфигурируете упаковку zip-файла от панели генерации кода, генератор кода использует packNGo, чтобы вывести zip-файл во время процесса сборки.

  1. Выберите Code Generation> код Package и артефакты. Опционально, обеспечьте имя zip-файла. Чтобы применить изменения, нажать ОК.

  2. Создайте модель. Генератор кода выводит zip-файл в конце процесса сборки.

Если вы конфигурируете упаковку zip-файла с set_param, генератор кода использует packNGo, чтобы вывести zip-файл во время процесса сборки.

Используйте set_param, чтобы сконфигурировать упаковку zip-файла для образцового zingbit в файле zingbit.zip zip.

set_param('zingbit','PostCodeGenCommand', ...
   'packNGo(buildInfo);');

Входные параметры

свернуть все

Во время процесса сборки генератор кода помещает buildInfo.mat в папку генерации кода. Этот MAT-файл содержит объект buildInfo. Объект предоставляет информацию что использование packNGo, чтобы произвести zip-файл.

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

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Имя должно появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: {'packType', 'плоский', 'nestedZipFiles', верный}

Если 'flat', группируйте файлы сгенерированного кода в zip-файле как единственная, плоская папка.

Если 'hierarchical', группируйте файлы сгенерированного кода иерархически в первичном zip-файле.

Пример: {'packType', 'плоский'}

Если true, создайте первичный zip-файл, который содержит три вторичных zip-файла:

  • mlrFiles.zip — Файлы в вашем дереве папки matlabroot

  • sDirFiles.zip — Файлы в и под вашей папкой генерации кода

  • otherFiles.zip — Необходимые файлы не в деревьях папки matlabroot или start

Если false, создайте первичный zip-файл, который содержит папки, например, вашу папку генерации кода и matlabroot.

Пример: {'nestedZipFiles', верный}

Если вы не задаете 'fileName' - пара значения, функциональные пакеты файлы в zip-файле под названием modelOrFunctionName.zip, и помещает zip-файл в папку генерации кода.

Если вы задаете 'fileName' со значением, 'myName', функция создает myName.zip в папке генерации кода.

Чтобы задать другое местоположение для первичного zip-файла, предоставьте абсолютный путь местоположению, fullPath/myName.zip

Пример: {'Имя файла', '/home/user/myModel. zip

Если true, включайте только минимальные заголовочные файлы, требуемые создавать код в zip-файле.

Если false, включайте заголовочные файлы, найденные на включать пути в zip-файле.

Пример: {'minimalHeaders', верный}

Если false, не включайте папку html в zip-файл.

Если true, включайте папку html в zip-файл.

Пример: {'includeReport', ложь}

Если false, оконечный на ошибках анализа.

Если true, не отключайте на ошибках анализа.

Пример: {'ignoreParseError', ложь}

Если false, оконечный при недостающих ошибках файла.

Если true, не отключайте при недостающих ошибках файлов.

Пример: {'ignoreFileMissing', ложь}

Ограничения

  • Функция работает с исходными файлами только, такими как *.c c. cpp и файлы *.h. Функция не поддерживает флаги компиляции, задает, или make-файлы.

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

  • Для MATLAB CODER функция не группирует пример основной источник и заголовочные файлы, которые вы генерируете с параметрами конфигурации по умолчанию. Чтобы группировать пример основные файлы, сконфигурируйте генерацию кода, чтобы сгенерировать и скомпилировать пример основная функция, сгенерировать ваш код, и затем группировать файлы типа "build".

  • packNGo не группирует код, сгенерированный для целей MEX.

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

Была ли эта тема полезной?