-a
Добавьте файлы в развертываемый архив с помощью -a path
чтобы указать файлы, которые будут добавлены. Несколько -a
опции разрешены.
Если имя файла задано как -a
компилятор ищет эти файлы по пути MATLAB, поэтому указание полного имени пути опционально. Эти файлы не передаются в mbuild
, поэтому можно включать такие файлы, как файлы данных.
Если имя папки задано как -a
Опция все содержимое этой папки рекурсивно добавляется в развертываемый архив. Для примера,
mcc -m hello.m -a ./testdir
задает, что все файлы в testdir
, а также все файлы в его подпапках добавляются в развертываемый архив. Поддерево папок в testdir
сохраняется в развернутом архиве.
Если имя файла включает шаблон подстановки, в развертываемый архив добавляются только те файлы в папке, которые соответствуют шаблону, а подпапки данного пути не обрабатываются рекурсивно. Для примера,
mcc -m hello.m -a ./testdir/*
задает, что все файлы в ./testdir
добавляются в развертываемый архив и подпапки в ./testdir
не обрабатываются рекурсивно.
mcc -m hello.m -a ./testdir/*.m
указывает, что все файлы с расширением .m
под ./testdir
добавляются в развертываемый архив и подпапки ./testdir
не обрабатываются рекурсивно.
Примечание
*
является единственным поддерживаемым подстановочным знаком.
Когда вы добавляете файлы в архив с помощью -a
который не отображается в пути MATLAB во время компиляции, запись пути добавляется к пути выполнения приложения так, чтобы они появлялись на пути при выполнении развернутого кода.
Когда вы используете -a
опция, чтобы задать полный путь к ресурсу, основной путь сохраняется, с некоторыми изменениями, но относительно подкаталога директории кэша во время выполнения, а не локальной папки пользователя. Директория кэша создаётся из развертываемого архива при первом выполнении приложения. Вы можете использовать isdeployed
функция для определения, выполняется ли приложение в развернутом режиме, и соответствующей настройки пути. The -a
опция также создает .auth
файл в целях авторизации.
Внимание
Если вы используете -a
флаг для включения файла, который не указан в пути MATLAB, папка, содержащая файл, добавляется к пути анализа зависимостей MATLAB. В результате другие файлы из этой папки могут быть включены в скомпилированное приложение.
Примечание
Если вы используете -a
флаг для включения пользовательских классов Java, автономные приложения работают без необходимости менять classpath
если класс Java не является представителем пакета. То же самое относится и к файлам JAR. Однако, если добавляемый класс является представителем пакета, код MATLAB должен выполнить соответствующий вызов javaaddpath
для обновления classpath
с родительской папкой пакета.
-b
Сгенерируйте Visual Basic® файл (.bas
), содержащий интерфейс Microsoft Excel Formula Function к COM-объекту, сгенерированному MATLAB Compiler. При импорте в код Visual Basic книги этот код позволяет рассматривать функцию MATLAB как функцию формулы камеры.
-B
Замените файл на mcc
командная строка с содержимым указанного файла. Использовать
-B filename[:<a1>,<a2>,...,<an>]
Комплект filename
должны содержать только mcc
опции командной строки и соответствующие аргументы и/или другие имена файлов. Файл может содержать другие -B
опции. Пакет может включать параметры замены для опций компилятора, которые принимают имена и номера версий. Смотрите Использование пакетов для создания кода MATLAB (MATLAB Compiler SDK).
-c
При использовании в сочетании с -l
опция подавляет компиляцию и связывание сгенерированного кода C-оболочки. The -c
опция не может использоваться независимо от -l
опция.
-C
Не встраивайте развертываемый архив в двоичные файлы.
Примечание
The -C
флаг игнорируется для библиотек Java.
-d
Поместите вывод в указанную папку. Использовать
чтобы направить сгенерированные файлы в outFolder
. Указанная папка должна уже существовать.
-e
Использование -e
вместо -m
Опция, чтобы сгенерировать автономное приложение Windows, которое не открывает командную строку Windows при выполнении. -e
эквивалентно -W WinMain -T link:exe
.
Эта опция работает только в операционных системах Windows.
-f
Переопределите файл опций по умолчанию указанным файлом опций. Он конкретно применяется к общим библиотекам C/C + +, COM и целевым устройствам Excel. Использовать
для задания filename
как файл опций при вызове mbuild
. Эта опция позволяет использовать различные компиляторы ANSI для различных вызовов компилятора. Эта опция является прямым проходом к mbuild
.
-g
, -G
Включите информацию о символе отладки для кода C/C + +, сгенерированного MATLAB Compiler SDK. Это также вызывает mbuild
передавать соответствующие флаги отладки в системный компилятор C/C + +. Отладка опции позволяет выполнить обратную трассировку до точки, в которой можно определить, произошёл ли отказ в инициализации MATLAB Runtime, вызове функции или стандартной программы завершения. Эта опция не позволяет вам отлаживать файлы MATLAB с помощью отладчика C/C + +.
-I
Добавьте новый путь к папке в список включенных папок. Каждый -I
опция добавляет папку в конец списка путей для поиска. Для примера,
-I <directory1> -I <directory2>
настраивает путь поиска файлов так, чтобы directory1
сначала выполняется поиск файлов MATLAB, а затем directory2
. Эта опция важна для автономной компиляции, где путь MATLAB недоступен.
Если используется в сочетании с -N
опция, -I
опция добавляет папку в путь компиляции в том же положении, в котором она появилась в пути MATLAB, а не в начале пути.
-K
Прямое mcc
не удалять выходные файлы, если компиляция заканчивается преждевременно из-за ошибки.
Поведение по умолчанию mcc
удаление любого частичного выхода, если команда не выполняется успешно.
-m
Прямое mcc
чтобы сгенерировать автономное приложение.
-M
Задайте опции времени компиляции. Использовать
для прохождения string
непосредственно к mbuild
. Эта опция предоставляет полезный механизм для определения опций времени компиляции, например -M "-Dmacro=value"
.
Примечание
Несколько -M
опции не накапливаются; только самый правый -M
используется опция.
Для прохождения таких опций, как /bigobj
, разметка строки в соответствии с вашей платформой.
Платформа | Синтаксис |
---|
MATLAB |
|
Командная строка Windows |
|
Командная строка Linux и macOS |
|
-n
The -n
опция автоматически определяет числовые входные параметры командной строки и обрабатывает их как MATLAB удваивается.
-N
Передача -N
очищает путь ко всем папкам, кроме следующих основных (этот список может изменяться с течением времени):
matlabroot\
toolbox\matlab
matlabroot
\ toolbox\локальный
matlabroot
\ toolbox\компилятор
matlabroot
\ toolbox\shared\bigdata
Передача -N
также сохраняет все подпапки в этом списке, которые отображаются в пути MATLAB во время компиляции. Включая -N
в командной строке позволяет заменять папки из исходного пути, сохраняя относительное упорядоченное расположение включенных папок. Также включены все подпапки включенных папок, которые находятся в исходном пути. В сложение, -N
опция сохраняет все папки, включенные в путь, не находящийся в matlabroot
Инструменты
.
При использовании –N
опция, используйте –I
опция принудительного включения папки, расположенной в верхней части пути компиляции. Используйте –p
опция условно включать папки и их подпапки; если они присутствуют в пути MATLAB, они появляются в пути компиляции в том же порядке.
-o
Укажите имя последнего исполняемого файла (только автономные приложения). Использовать
для присвоения имени окончательному исполняемому файлу MATLAB Compiler. К указанному имени добавляется подходящее зависящее от платформы расширение (для примера, .exe
для автономных приложений Windows).
-p
Используйте в сочетании с опцией -N
для добавления определенных папок и подпапок в matlabroot
Инструменты
в путь MATLAB компиляции. Файлы добавляются в том же порядке, в котором они появляются в пути MATLAB. Используйте синтаксис
где directory
- папка, которая будет включена. Если directory
не является абсолютным путем, оно принято в текущей рабочей папке.
Если папка включена в -p
то есть в исходном пути MATLAB, папка и все ее подпапки, которые появляются в исходном пути, добавляются к пути компиляции в том же порядке.
Если папка включена в -p
это не в исходном пути MATLAB, эта папка игнорируется. (Можно использовать -I
заставить его включить.)
-r
Встройте значок ресурса в двоичном формате. Синтаксис следующий:
-R
Укажите опции MATLAB Runtime.
Примечание
Эта опция применяется только при создании автономных приложений с помощью MATLAB Compiler.
Синтаксис следующий:
Опция | Описание | Цель |
---|
'-logfile <reservedrangesplaceholder0> '
| Укажите имя файла журнала. Опция должна быть в одинарных кавычках. | MATLAB Compiler |
-nodisplay | Подавление nodisplay MATLAB предупреждение во время выполнения. | MATLAB Compiler |
-nojvm | Не используйте виртуальную машину Java (JVM). | MATLAB Compiler |
-startmsg | Настраиваемое пользовательское сообщение отображается во время инициализации. |
Автономные приложения MATLAB Compiler
|
-completemsg | Настраиваемое пользовательское сообщение отображается при завершении инициализации. |
Автономные приложения MATLAB Compiler
|
-singleCompThread | Ограничьте MATLAB одним вычислительным потоком. | MATLAB Compiler |
Внимание
При запуске на macOS, если вы используете -nodisplay
как один из опций, включенных в mclInitializeApplication
, затем вызов на mclInitializeApplication
должно произойти перед вызовом mclRunMain
.
Примечание
Если вы задаете -R
опция для библиотек, созданных из MATLAB Compiler SDK, mcc
все еще компилируется без ошибок и генерирует результаты. Но -R
опция не применяется к этим библиотекам и ничего не делает.
-S
Стандартное поведение среды MATLAB Runtime заключается в том, что каждый образец класса получает свой собственный контекст MATLAB Runtime. Контекст включает глобальное рабочее пространство MATLAB для переменных, таких как путь и базовое рабочее пространство для каждой функции в классе. Если создается несколько образцов класса, каждый образец получает независимый контекст. Это гарантирует, что изменения, внесенные в глобальное или базовое рабочее пространство в одном образце класса, не влияют на другие образцы того же класса.
В singleton MATLAB Runtime все образцы класса совместно используют контекст. Если создано несколько образцов класса, они используют контекст, созданный первым образцом, который экономит время запуска и некоторые ресурсы. Однако любые изменения, внесенные в глобальную рабочую область или базовое рабочее пространство одним образцом, влияют на все образцы классов. Для примера, если instance1
создает глобальную переменную A
в singleton MATLAB Runtime, затем instance2
может использовать переменную A
.
Singleton MATLAB Runtime поддерживается только следующими продуктами для этих конкретных целей:
Цель, поддерживаемая Singleton MATLAB Runtime | Создайте Singleton MATLAB Runtime by.... |
---|
Надстройка Excel | Поведение по умолчанию для целевого объекта является singleton MATLAB Runtime. Вам не нужно выполнять другие шаги. |
Сборка .NET | Поведение по умолчанию для целевого объекта является singleton MATLAB Runtime. Вам не нужно выполнять другие шаги. |
Компонент | Используя приложение Library Compiler, нажмите Settings и добавить -S в поле Additional parameters passed to MCC. Использование mcc , передайте -S флаг.
|
Пакет Java |
-T
Задайте выход целевую фазу и тип.
Используйте синтаксис -T target
для определения типа выхода.
Цель | Описание |
---|
compile:exe | Сгенерируйте файл обертки C/C + + и скомпилируйте файлы C/C + + в объектную форму, подходящую для связывания в автономное приложение. |
compile:lib | Сгенерируйте файл обертки C/C + + и скомпилируйте файлы C/C + + в форму объекта, подходящую для связывания в общую библиотеку или DLL. |
link:exe | То же, что и compile:exe а также связать файлы объектов в автономное приложение. |
link:lib | То же, что и compile:lib а также связать файлы объектов в общую библиотеку или DLL. |
-u
Зарегистрируйте COM- компонента только для текущего пользователя на машине разработки. Аргумент применяется только к типовым COM- компонента и конечным объектам надстроек Microsoft Excel.
-U
Создайте развертываемый архив (.ctf
файл) для MATLAB Production Server.
-v
Отобразите шаги компиляции, включая:
Номер версии MATLAB Compiler
Имена исходных файлов по мере их обработки
Имена сгенерированных выходных файлов по мере их создания
Вызов mbuild
The -v
опция проходит -v
опция для mbuild
и отображает информацию о mbuild
.
-w
Отображение предупреждающих сообщений. Используйте синтаксис
для управления отображением предупреждений.
Синтаксис | Описание |
---|
-w list | Перечислите предупреждения во время компиляции, которые имеют сокращенные идентификаторы, и их состояние. |
-w enable | Включите все предупреждения во время компиляции. |
-w disable [: <string> ] | Отключите определенные предупреждения во время компиляции, связанные с <string> . Опустошите необязательную <string> для применения disable действие для всех предупреждений во время компиляции. |
-w включить [: <string> ] | Включите определенные предупреждения во время компиляции, связанные с <string> . Опустошите дополнительный <string> для применения enable действие для всех предупреждений во время компиляции. |
-w ошибка [: <string> ] | Обработайте определенные предупреждения во время компиляции и во время выполнения, связанные с <string> как ошибка. Опустошите дополнительный <string> для применения error действие для всех предупреждений во время компиляции и во время выполнения. |
-w off [: <string> ] | Отключите предупреждения для определенных сообщений об ошибке, определяемых <string> . Опустошите необязательную <string> для применения off действие для всех предупреждений во время выполнения. |
-w on [: <string> ] | Включите предупреждения во время выполнения, связанные с <string> . Опустошите дополнительный <string> для применения on действие для всех предупреждений во время выполнения. Эта опция включена по умолчанию. |
Можно также включить или выключить предупреждения в коде MATLAB.
Например, чтобы выключить предупреждения для развернутых приложений (задано использование isdeployed
) в startup.m
, вы пишете:
if isdeployed
warning off
end
Чтобы включить предупреждения для развернутых приложений, вы пишете:
if isdeployed
warning on
end
Можно также задать несколько -w
опции.
Для примера, если вы хотите отключить все предупреждения, кроме repeated_file
, вы пишете:
-w disable -w enable:repeated_file
Когда вы задаете несколько -w
опции, они обрабатываются слева направо.-W
Управляйте генерацией оберток функций. Используйте синтаксис
для управления генерацией оболочек функций для набора файлов MATLAB, сгенерированных компилятором. Вы предоставляете список функций, и компилятор генерирует функции оболочки и любые соответствующие определения глобальных переменных.
Цель | Синтаксис |
---|
Автономное приложение | -W 'main: appName , версия = version ' |
Автономное приложение (без консоли Windows) | -W 'WinMain: appName , версия = version ' |
Надстройка Excel | -W 'excel: addinName , className , версия = version ' |
Приложение Hadoop MapReduce | -W 'hadoop: archiveName , CONFIG: configFile ' |
Искровое приложение | -W 'искра: appName , version ' |
Примечание
Замените одинарные кавычки на двойные при выполнении команды из командной строки Windows.
-X
Использование -X
игнорировать файлы данных, считанные общими функциями ввода-вывода файла MATLAB во время анализа зависимостей. Для получения дополнительной информации смотрите Анализ зависимостей с использованием MATLAB Compiler. Для примеров, как использовать -X
опция, см. %#exclude
.
-Y
Использовать
для переопределения файла лицензии по умолчанию заданным аргументом.
Примечание
The -Y
флаг работает только с режимом командной строки.
>>!mcc -m foo.m -Y license.lic