-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
функция, чтобы определить, запускается ли приложение в развернутом режиме и настраивает путь соответственно. -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. -c
опция не может использоваться независимо от -l
опция.
-C
Не встраивайте развертываемый архив в двоичные файлы.
Примечание
-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
То
опция автоматически идентифицирует, что числовая командная строка вводит и обрабатывает их, когда MATLAB удваивается.
-N
Передача -N
очищает путь всех папок кроме следующих базовых папок (этот список подвержен изменениям в зависимости от времени):
matlabroot\
toolbox\matlab
matlabroot
\toolbox\local
matlabroot
\toolbox\compiler
matlabroot
\toolbox\shared\bigdata
Передача -N
также сохраняет все подпапки в этом списке, которые появляются на пути MATLAB во время компиляции. Включая -N
на командной строке позволяет вам заменить папки от исходного пути, при сохранении относительного упорядоченного расположения включенных папок. Все подпапки включенных папок, которые появляются на исходном пути, также включены. Кроме того, -N
опция сохраняет все папки, которые вы включали на пути, которые не находятся под matlabroot
\toolbox
.
При использовании –N
опция, используйте –I
опция, чтобы обеспечить включение папки, которая помещается во главе пути к компиляции. Используйте –p
опция, чтобы условно включать папки и их подпапки; если они присутствуют в пути MATLAB, они появляются в пути к компиляции в том же порядке.
-o
Задайте имя итогового исполняемого файла (только автономные приложения). Использование
назвать итоговый исполняемый выход MATLAB Compiler. Подходящее зависимое платформой расширение добавляется к указанному имени (например, .exe
для автономных приложений Windows).
-p
Используйте в сочетании с опцией -N
добавить определенные папки и подпапки под matlabroot
\toolbox
к пути MATLAB компиляции. Файлы добавляются в том же порядке, в котором они появляются в пути MATLAB. Используйте синтаксис
где directory
папка должна быть включена. Если directory
не абсолютный путь, он принят, чтобы находиться под текущей рабочей папкой.
Если папка включена с -p
это находится на исходном пути MATLAB, папка и все ее подпапки, которые появляются на исходном пути, добавляются к пути к компиляции в том же порядке.
Если папка включена с -p
это не находится на исходном пути MATLAB, та папка проигнорирована. (Можно использовать -I
обеспечивать его включение.)
-r
Встройте значок ресурса в двоичный файл. Синтаксис следующие:
-R
Предоставьте возможности MATLAB Runtime, которые передаются приложению во время инициализации.
Примечание
Эта опция релевантна только при создавании автономных приложений или дополнений Excel с помощью MATLAB Compiler.
Синтаксис следующие:
Опция | Описание | Цель |
---|
'-logfile,filename ' | Задайте имя файла журнала. Файл создается в папке приложения во времени выполнения. Опция должна быть в одинарных кавычках. Используйте двойные кавычки при выполнении команды от Windows Command Prompt. | 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
Запутайте структуры папок и имена файлов в развертываемом архиве (.ctf
файл) от конечного пользователя. Опционально зашифруйте дополнительные типы файлов.
-s
опция направляет mcc
поместить пользовательский код и данные, содержавшиеся в .m
P
, v7.3 .mat
, и файлы MEX в пользовательский пакет в CTF. Во время времени выполнения, кода MATLAB и данных дешифрован и загружен непосредственно от пользовательского пакета, а не извлечен к файловой системе. Файлы MEX временно извлечены из пользовательского пакета перед загружением.
Чтобы вручную включать дополнительные типы файлов в пользовательский пакет, добавьте каждый тип файла в отдельном дополнительном теге к файлу matlabroot
/toolbox/compiler/advanced_package_supported_files.xml
.
Следующее не поддерживается:
ver
функция
MATLAB Runtime из процесса (C++ совместно использовал библиотеку для Массива данных MATLAB),
Выполнение файла MEX из процесса (mexhost
, feval
, matlab.mex.MexHost
)
-S
Стандартное поведение для MATLAB Runtime состоит в том, что каждый экземпляр класса получает свой собственный контекст MATLAB Runtime. Контекст включает глобальное рабочее пространство MATLAB для переменных, таких как путь и базовое рабочее пространство для каждой функции в классе. Если несколько экземпляров класса создаются, каждый экземпляр получает независимый контекст. Это гарантирует, что изменения, внесенные в глобальное или базовое рабочее пространство в одном экземпляре класса, не влияют на другие экземпляры того же класса.
В одиночном элементе MATLAB Runtime все экземпляры класса совместно используют контекст. Если несколько экземпляров класса создаются, они используют контекст, созданный первой инстанцией, которая экономит время запуска и некоторые ресурсы. Однако любые изменения, внесенные в глобальную рабочую область или базовое рабочее пространство одним экземпляром, влияют на все экземпляры класса. Например, если instance1
создает глобальную переменную A
в одиночном элементе MATLAB Runtime, затем instance2
может использовать переменную A
.
Singleton MATLAB Runtime только поддерживается следующими продуктами на этих определенных целях:
Цель, поддержанная Singleton MATLAB Runtime | Создайте Singleton MATLAB Runtime.... |
---|
Дополнение Excel | Поведение по умолчанию для цели является одиночным элементом MATLAB Runtime. Вы не должны выполнять другие шаги. |
Блок.NET | Поведение по умолчанию для цели является одиночным элементом MATLAB Runtime. Вы не должны выполнять другие шаги. |
COM-компонент | Используя приложение Library Compiler, click 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
-v
опция передает -v
опция к mbuild
и информация об отображениях о mbuild
.
-w
Отобразите предупреждающие сообщения. Используйте синтаксис
управлять отображением предупреждений.
Синтаксис | Описание |
---|
-w list | Перечислите предупреждения времени компиляции, которые сократили идентификаторы, вместе с их состоянием. |
-w enable | Включите все предупреждения времени компиляции. |
- w отключают [: <string> ] | Отключите определенные предупреждения времени компиляции, сопоставленные с <string> . Не используйте дополнительный <string> применять disable действие ко всем предупреждениям времени компиляции. |
- w включают [: <string> ] | Включите определенные предупреждения времени компиляции, сопоставленные с <string> . Не используйте дополнительный <string> применять enable действие ко всем предупреждениям времени компиляции. |
- w ошибка [: <string> ] | Обработайте определенное время компиляции и предупреждения во время выполнения, сопоставленные с <string> как ошибка. Не используйте дополнительный <string> применять error действие ко всему времени компиляции и предупреждения во время выполнения. |
- w прочь [: <string> ] | Выключите предупреждения для определенных сообщений об ошибке, заданных <string> . Не используйте дополнительный <string> применять off действие ко всем предупреждениям во время выполнения. |
- w на [: <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=version ' |
Автономное приложение (никакая консоль Windows) | - W 'WinMain:appName , version=version ' |
Дополнение Excel | - W 'excel:addinName ClassName , version=version ' |
Приложение MapReduce Hadoop | - W 'hadoop:archiveName , CONFIG:configFile ' |
Приложение Spark | - W 'spark:appName версия ' |
Примечание
Замените одинарные кавычки на двойной при выполнении команды от Windows Command Prompt.
-X
Используйте -X
проигнорировать файлы данных, считанные общим вводом-выводом файла MATLAB, функционирует во время анализа зависимостей. Для получения дополнительной информации смотрите, что Анализ зависимостей Использует MATLAB Compiler. Для примеров о том, как использовать -X
опция, смотрите %#exclude
.
-Y
Использование
заменять файл лицензии по умолчанию с заданным аргументом.
Примечание
-Y
отметьте работает только с режимом командной строки.
>>!mcc -m foo.m -Y license.lic
-Z
Использование
задавать метод добавляющих пакетов поддержки в развертываемый архив.
Синтаксис | Описание |
---|
-Z 'autodetect' | Процесс анализа зависимостей обнаруживает и включает необходимые пакеты поддержки автоматически. Это - поведение по умолчанию MCC. |
-Z 'none' | Никакие пакеты поддержки не включены. Используя эту опцию может вызвать ошибки периода выполнения. |
- Z packagename | Только заданный пакет поддержки включен. Чтобы задать несколько пакетов поддержки, используйте несколько -Z входные параметры. |