packNGo

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

Описание

пример

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

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

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

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

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

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

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

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

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

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

Примеры

свернуть все

После того, как процесс сборки завершен, можно запустить packNGo из Командного окна. Используйте packNGo для упаковки zip-файла сгенерированного кода в файле portzingbit.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 code and artifacts. Опционально, обеспечьте Zip file name. Чтобы применить изменения, нажмите OK.

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

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

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

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

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

свернуть все

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

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

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

Пример: {'packType','flat','nestedZipFiles',true}

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

Если 'hierarchical', группируйте файлы сгенерированного кода иерархически в первичном zip-файле. Иерархия содержит топ-модель, модель, на которую ссылаются, и совместно использовала служебные папки. Функция также группирует соответствующий buildInfo.mat файлы для папок.

Пример: {'packType','flat'}

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

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

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

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

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

Пример: {'nestedZipFiles',true}

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

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

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

Пример: {'fileName','/home/user/myModel.zip'}

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

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

Пример: {'minimalHeaders',true}

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

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

Пример: {'includeReport',false}

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

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

Пример: {'ignoreParseError',false}

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

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

Пример: {'ignoreFileMissing',false}

Ограничения

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

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

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