Когда вы создаете приложение, которое использует сгенерированный код C/C + +, вы должны предоставить главную функцию C/C + +, которая вызывает сгенерированный код.
По умолчанию для генерации кода исходного кода C/C + +, статических библиотек, динамических библиотек и исполняемых файлов, MATLAB® Coder™ генерирует пример основной функции C/C + +. Эта функция является шаблоном, который может помочь вам включить сгенерированный код C/C + + в свое приложение. Пример основной функции объявляет и инициализирует данные, включая динамически распределенные данные. Он вызывает функции точки входа, но не использует значения, которые возвращают функции точки входа.
MATLAB Coder генерирует исходные и заголовочные файлы для примера основной функции в examples
подпапка папки сборки. Для генерации кода C он генерирует файлы main.c
и main.h
. Для генерации кода С++ он генерирует файлы main.cpp
и main.h
.
Не изменяйте файлы main.c
и main.h
в examples
подпапка. Если это так, при регенерации кода MATLAB Coder не регенерирует основные файлы примера. Он предупреждает вас, что обнаруживает изменения в сгенерированных файлах. Прежде чем использовать пример основной функции, скопируйте пример основного исходного кода и заголовочных файлов в расположение за пределами папки сборки. Измените файлы в новом расположении в соответствии с требованиями вашего приложения.
packNGo
функция и опция Package приложения MATLAB Coder не упаковывают примеры основных исходных и заголовочных файлов, когда вы генерируете файлы с помощью настроек строения по умолчанию. Чтобы упаковать основные файлы примера, сконфигурируйте генерацию кода, чтобы сгенерировать и скомпилировать основную функцию примера, сгенерируйте ваш код, а затем упакуйте файлы сборки.
Подготовьте код MATLAB для генерации кода.
Проверьте наличие проблем во время выполнения.
Убедитесь, что пример основной генерации включен.
Сгенерируйте код C/C + + для функций точки входа.
Скопируйте пример основные файлы из examples
подпапка в другую папку.
Измените основные файлы в новой папке в соответствии с требованиями вашего приложения.
Разверните пример основного и сгенерированного кода для нужной платформы.
Создайте приложение.
Для примера, который показывает, как сгенерировать пример main и использовать его для создания исполняемого файла, смотрите Использование примера C Main в приложении.
На странице Generate Code, чтобы открыть диалоговое окно Generate, щелкните стрелу Generate.
В диалоговом окне Generate установите Build Type одно из следующих значений:
Source Code
Static Library
Dynamic Library
Executable
Нажмите More Settings.
На вкладке All Settings, под Advanced, установите Generate example main одно из следующего:
Установите на | Для |
---|---|
Do not generate an example main function
| Не генерирует пример основной функции C/C + + |
Generate, but do not compile, an example main function (по умолчанию) | Генерация примера основной функции C/C + +, но не компиляция |
Generate and compile an example main function | Сгенерирование примера основной функции C/C + + и ее компиляция |
Создайте объект строения кода для 'lib'
, 'dll'
, или 'exe'
. Для примера:
cfg = coder.config('lib'); % or dll or exe
Установите GenerateExampleMain
свойство.
Установите на | Для |
---|---|
'DoNotGenerate'
| Не генерирует пример основной функции C/C + + |
'GenerateCodeOnly' (по умолчанию) | Генерация примера основной функции C/C + +, но не компиляция |
'GenerateCodeAndCompile' | Сгенерирование примера основной функции C/C + + и ее компиляция |
Для примера:
cfg.GenerateExampleMain = 'GenerateCodeOnly';