Если вы требуете перемещения файлов статического и сгенерированного кода для модели к другой среде разработки, используйте утилиту упаковывать-и-идти. Это условие происходит, когда ваша система или интегрированная среда разработки (IDE) не включают продукты Simulink® и MATLAB®.
pack-n-go утилита использует инструменты для настройки процесса сборки после генерации кода и packNGo функционируйте, чтобы найти и группировать файлы для создания исполняемого изображения. Файлы группированы в сжатом файле, что можно переместить и распаковать использование стандартного zip утилита.
Группировать и перемещать код для вашей модели с помощью пользовательского интерфейса:
В диалоговом окне Configuration Parameters выберите Package code and artifacts. Эта опция конфигурирует процесс сборки, чтобы запустить packNGo функция после генерации кода, чтобы группировать сгенерированный код и артефакты для перемещения.
В поле Zip file name введите имя zip файл, в котором можно группировать сгенерированный код и артефакты для перемещения. Можно задать имя файла с или без .zip расширение. Если вы не задаете расширение или расширение кроме .zip, zip утилита добавляет the.zip расширение. Если вы не задаете значение, процесс сборки использует имя , где modelzip имя топ-модели, для которой генерируется код.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 функция и информационный объект сборки для модели. Можно настроить упаковочную операцию, чтобы использовать:
Система сгенерированный информационный объект сборки.
В этом случае, прежде, чем сгенерировать типовой кодекс, используйте 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' верный... |
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. zip файл содержит два вторичных zip файлы, mlrFiles.zip и sDirFiles.zip.
Смотрите zip файлы mlrFiles.zip и sDirFiles.zip.
Переместите zip файл к целевой среде и распаковывает его.
Для получения информации об ограничениях, которые применяются к этой функции, смотрите packNGo.
Если процесс сборки использует подход make-файла шаблона, то packNGo использует расширение исполняемого файла, заданное инструментом компоновщика, чтобы определить бинарные артефакты, которые требуют упаковки.
Если вы генерируете исполняемый файл с расширением, которое не является значением по умолчанию, проверяйте, что расширение сохранено в наборе инструментальных средств, сопоставленном с make-файлом шаблона. Для получения дополнительной информации смотрите Партнера Make-файл Шаблона с Набором инструментальных средств.
Если процесс сборки генерирует исполняемый файл с расширением, которое отличается от расширения, сохраненного в наборе инструментальных средств, packNGo не группирует исполняемый файл.