После создания кода из алгоритма MATLAB ® можно переместить код в другую среду разработки, такую как система или интегрированная среда разработки (IDE), которая не включает MATLAB. Вы можете упаковывать файлы в сжатый файл с помощью packNGo функция в командной строке или выборе Пакета в приложении MATLAB Coder™. Как только Вы создаете zip-файл, Вы можете переместить и распаковать сжатый zip-файл, используя стандартную полезность почтового индекса.
В этом примере показано, как упаковать исполняемый файл, сгенерированный на примере создания кода C из кода MATLAB, с помощью команды packNGo функция. Можно также создать и упаковать статический файл библиотеки или динамический файл библиотеки. Невозможно упаковать файл C-MEX, так как файл MEX требует выполнения MATLAB. Для получения дополнительной информации о packNGo, см. packNGo в методах RTW.BuildInfo (кодер MATLAB).
Файлы, необходимые для создания исполняемого файла: reconstructSignalTestbench.m, GenerateSignalWithHighEnergyFFTCoeffs.m, и reconstructSignalTestbench_Main.c файлы из примера Создать код C из кода MATLAB. Скопируйте все эти файлы в текущую рабочую папку. Чтобы создать исполняемый файл, выполните следующие команды в командной строке MATLAB:
cfg = coder.config('exe'); cfg.CustomSource = 'reconstructSignalTestbench_Main.c'; cfg.CustomInclude = ['"',pwd,'"']; codegen -config cfg -report reconstructSignalTestbench
Если вы используете Windows, вы можете видеть, что reconstructSignalTestbench.exe создается в текущей папке. При использовании компьютера Linux генерируемый исполняемый файл reconstructSignalTestbench. codegen генерирует исходный код зависимости и buildinfo.mat в файле codegen\exe\reconstructSignalTestbench папка.
Загрузить buildInfo объект.
load('codegen\exe\reconstructSignalTestbench\buildinfo.mat')Упакуйте код в .zip с использованием packNGo функция.
packNGo(buildInfo,'fileName','reconstructSignalWithHighEnergyFFTCoeffs.zip');
packNGo создает zip-файл, reconstructSignalWithHighEnergyFFTCoeffs.zip в текущей рабочей папке. В этом примере указывается только имя файла. При необходимости можно указать дополнительные параметры упаковки. См. раздел Определение параметров packNGo (кодер MATLAB).
Это .zip файл содержит код C, заголовочные файлы, .dll и исполняемый файл, который должен выполняться во внешней среде. Переместить .zip в целевую среду разработки и распакуйте файл для запуска исполняемого файла.
При сравнении содержимого codegen\exe\reconstructSignalTestbench папку и reconstructSignalWithHighEnergyFFTCoeffs.zip папка, вы можете видеть, что есть дополнительные .dll файлы, которые отображаются в папке zip. Они .dll файлы являются предварительно созданными файлами динамической библиотеки, поставляемыми с MATLAB. Для исполняемых файлов, созданных из определенных объектов System, необходимы эти предварительно созданные .dll файлы. Пример создания кода C из кода MATLAB использует dsp.FFT и dsp.IFFT Системные объекты, чьи 'FFTImplementation' имеет значение 'FFTW'. В режиме FFTW исполняемые файлы, сгенерированные из этих объектов, зависят от предварительно созданного .dll файлы. Для кода пакета, который выполняется в среде без установленного MATLAB, MATLAB Coder упаковывает следующие .dll файлы в zip-папке. Список всех системных объектов в DSP System Toolbox™, которые требуют предварительной сборки .dll см. раздел Как запустить созданный исполняемый файл вне MATLAB.
Идентификация предварительно созданного .dll , выполните следующую команду в командной строке MATLAB.
files = getNonBuildFiles(buildInfo,'true','true');
Дополнительные сведения см. в разделе getNonBuildFiles в настройке процесса построения (кодер MATLAB).
Пример, показывающий рабочий процесс опции Пакет (Package) для перемещения кода с помощью приложения Кодер MATLAB (MATLAB Coder), см. в разделе Код пакета для других сред разработки (MATLAB Coder).