Если вам требуется переместить статические и сгенерированный код файлы для модели в другую среду разработки, используйте утилиту pack-and-go. Это условие происходит, когда ваша система или интегрированная среда разработки (IDE) не включает MATLAB® и Simulink® товары.
Утилита pack-n-go использует инструменты для настройки процесса сборки после генерации кода и packNGo функция для поиска и пакетирования файлов для создания исполняемого образа. Файлы упакованы в сжатый файл, который можно переместить и распаковать с помощью стандартного zip утилита.
Чтобы упаковать и переместить код для вашей модели с помощью пользовательского интерфейса:
В диалоговом окне Параметров конфигурации выберите Package code and artifacts. Эта опция конфигурирует процесс сборки, чтобы запустить packNGo функция после генерации кода, чтобы упаковать сгенерированный код и программные продукты для перемещения.
В Zip file name поле введите имя zip файл, в который можно упаковать сгенерированный код и программные продукты для перемещения. Вы можете задать имя файла с .zip или без расширение. Если вы не задаете расширение или расширение кроме .zip, а zip утилита добавляет .zip расширение. Если вы не задаете значение, процесс сборки использует имя , где model.zip - имя верхней части, для которой генерируется код.model

Применить изменения и сгенерировать код для вашей модели. Чтобы убедиться, что он готов к перемещению, смотрите результат zip файл. В зависимости от zip инструмент, который вы используете, вы можете открыть и просмотреть файл, не распаковывая его.
Перемещение zip файл в целевую среду разработки и распаковать файл.
Чтобы упаковать и переместить код для модели с помощью интерфейса командной строки:
Прежде чем вы сгенерируете и упакуете файлы для сборки модели, решите, хотите ли вы, чтобы файлы были упакованы в плоскую или иерархическую структуру папки. По умолчанию, packNGo функция упаковывает файлы в одну, плоскую структуру папки.
| Если... | Тогда используйте... |
|---|---|
| Вы перемещаете файлы в IDE, которая не использует сгенерированный make-файл, или код не зависит от относительного расположения необходимых статических файлов | Одинарная, плоская структура папки |
| Целевая среда разработки должна поддерживать структуру папок исходного окружения, потому что она использует сгенерированный make-файл, или код зависит от относительного расположения файлов | Иерархическая структура |
Если используется иерархическая структура, packNGo функция создает два уровня zip файлы, основной zip файл, который в свою очередь содержит следующие вторичные zip файлы:
mlrFiles.zip - файлы в вашем дерево папокmatlabroot
sDirFiles.zip - файлы в папке сборки и в ней, где вы инициировали генерацию кода для модели
otherFiles.zip - необходимые файлы не в или matlabrootstart деревья папок
Пути для вторичной zip файлы относятся к корневой папке основного zip файл, поддерживающий структуру исходной папки разработки.
По умолчанию, packNGo функция называет основное zip файловой . У вас есть опция задать другое имя. Если вы задаете имя файла и опускаете расширение типа файла, функция добавляет model. имени, которое вы задаете.
Упакуйте файлы кода модели при помощи PostCodeGenCommand Параметр конфигурации, packNGo function, и создать информационный объект для модели. Можно настроить упаковочную операцию, чтобы использовать:
Системный информационный объект сборки.
В этом случае, прежде чем генерировать код модели, используйте set_param для установки параметра конфигурации PostCodeGenCommand к явному вызову packNGo функция. Для примера:
set_param(bdroot, 'PostCodeGenCommand', 'packNGo(buildInfo);');
После генерации и записи кода модели на диск и перед генерацией make-файла эта команда инструктирует процесс сборки для оценки вызова packNGo. Эта команда использует системно сгенерированный информационный объект сборки для текущей выбранной модели.
Информационный объект сборки, который вы создаете программно.
В этом случае можно использовать другие функции информации о сборке, чтобы селективно включать пути и файлы в объект информации о сборке, который вы затем задаете с packNGo функция. Для примера:
.
.
.
myModelBuildInfo = RTW.BuildInfo;
addSourceFiles(myModelBuildInfo, {'test1.c' 'test2.c' 'driver.c'});
.
.
.
packNGo(myModelBuildInfo);Следующие примеры показывают, как можно изменить поведение по умолчанию packNGo.
| Кому... | Укажите... |
|---|---|
| Измените структуру упаковки файлов на иерархическую | packNGo(buildInfo, 'packType' 'hierarchical'); |
Переименуйте основной zip файл | packNGo(buildInfo, 'fileName' 'zippedsrcs'); |
Измените структуру упаковки файлов на иерархическую и переименуйте основную zip файл | packNGo (buildInfo, 'packType' 'иерархический'... |
Включите заголовочные файлы, найденные в пути включения в zip файл | packNGo(buildInfo, 'minimalHeaders' false); |
| Сгенерируйте предупреждения для ошибок анализа и отсутствующих файлов | packNGo (buildInfo, 'ignoreParseError' true... |
Примечание
packNGo функция может потенциально изменять информацию о сборке, переданную в первой packNGo аргумент. Как часть упаковочного кода модели, packNGo может найти дополнительные файлы из исходного кода и включать пути, записанные в информации о сборке для модели, и добавить их к информации о сборке.
Чтобы убедиться, что он готов к перемещению, смотрите сгенерированные zip файл. В зависимости от zip инструмент, который вы используете, вы можете открыть и просмотреть файл, не распаковывая его. Если распаковка файла и вы упаковали файлы кода модели как иерархическую структуру, распаковка требует, чтобы вы распаковали основной и вторичный zip файлы. Когда вы распакуете вторичную zip файлы, сохраняются относительные пути к файлам.
Перемещение сгенерированного zip файл в целевую среду разработки и распаковать файл.
В этом примере показано, как упаковать файлы кода, сгенерированные для модели примера rtwdemo_rtwintro использование интерфейса командной строки:
Установите рабочую папку в папку с возможностью записи.
Откройте модель rtwdemo_rtwintro и сохраните копию в рабочую папку.
Введите следующую команду MATLAB:
set_param('rtwdemo_rtwintro', 'PostCodeGenCommand',...
'packNGo(buildInfo, ''packType'' ''hierarchical'')');Вы должны удвоить одинарные кавычки из-за вложения символьных массивов 'packType' и 'hierarchical' внутри символьного массива, который задает вызов на packNGo.
Сгенерируйте код для модели.
Смотрите сгенерированные zip файл, rtwdemo_rtwintro.zip. The zip файл содержит эти два дополнительных zip файлы, mlrFiles.zip и sDirFiles.zip.
Осмотрите zip файлы mlrFiles.zip и sDirFiles.zip.
Перемещение zip файл в целевое окружение и распаковать его.
Для получения информации об ограничениях, которые применяются к этой функции, см. packNGo.
Если процесс сборки использует подход make-файла шаблона, то packNGo использует расширение исполняемого файла, заданное инструментом linker, для определения двоичных программных продуктов, которые требуют упаковки.
Если вы генерируете исполняемый файл с расширением, которое не является значением по умолчанию, проверьте, что расширение сохранено в наборе инструментов, сопоставленном с шаблоном make-файла. Для получения дополнительной информации см. раздел «Связывание шаблона make-файла с набором инструментальных средств».
Если процесс сборки генерирует исполняемый файл с расширением, отличным от расширения, сохраненного в наборе инструментальных средств, packNGo не упакует исполняемый файл.