-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. При импорте в рабочую книгу кода 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 + +, созданного SDK компилятора MATLAB. Это также вызываетmbuild для передачи соответствующих флагов отладки системному компилятору C/C + +. Опция отладки позволяет выполнить обратную трассировку до точки, в которой можно определить, произошел ли сбой при инициализации среды выполнения MATLAB, вызова функции или процедуры завершения. Этот параметр не позволяет отладить файлы 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
-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. К указанному имени добавляется соответствующее расширение, зависящее от платформы (например, .exe для автономных приложений Windows).
-p
Использовать совместно с опцией -N для добавления определенных папок и подпапок в matlabroot\toolbox к пути компиляции MATLAB. Файлы добавляются в том же порядке, в котором они отображаются в пути MATLAB. Использовать синтаксис
где directory - папка, которая должна быть включена. Если directory не является абсолютным путем, предполагается, что он находится в текущей рабочей папке.
Если папка включена в -p то есть на исходном пути MATLAB, папка и все ее подпапки, которые появляются на исходном пути, добавляются к пути компиляции в том же порядке.
Если папка включена в -p которая отсутствует в исходном пути MATLAB, эта папка игнорируется. (Можно использовать -I принудительно включить его.)
-r
Встроить значок ресурса в двоичный файл. Синтаксис следующий:
-R
Укажите параметры среды выполнения MATLAB.
Примечание
Этот параметр применим только при создании автономных приложений с использованием компилятора MATLAB.
Синтаксис следующий:
Выбор | Описание | Цель |
|---|
'-logfile,filename' | Укажите имя файла журнала. Параметр должен быть в одиночных кавычках. | Компилятор MATLAB |
-nodisplay | Подавление MATLAB nodisplay предупреждение времени выполнения. | Компилятор MATLAB |
-nojvm | Не используйте виртуальную машину Java (JVM). | Компилятор MATLAB |
-startmsg | Настраиваемое сообщение пользователя, отображаемое во время инициализации. |
Автономные приложения компилятора MATLAB
|
-completemsg | Настраиваемое сообщение пользователя, отображаемое по завершении инициализации. |
Автономные приложения компилятора MATLAB
|
-singleCompThread | Ограничьте MATLAB одним вычислительным потоком. | Компилятор MATLAB |
Внимание
При работе на macOS, если вы используете -nodisplay как один из вариантов, включенных в mclInitializeApplication, затем звонок на mclInitializeApplication должно произойти перед вызовом mclRunMain.
Примечание
При указании -R для библиотек, созданных из MATLAB Compiler SDK, mcc по-прежнему компилирует без ошибок и генерирует результаты. Но -R не применяется к этим библиотекам и ничего не делает.
-S
Стандартное поведение среды выполнения MATLAB заключается в том, что каждый экземпляр класса получает собственный контекст среды выполнения MATLAB. Контекст включает глобальную рабочую область MATLAB для переменных, таких как путь и базовая рабочая область для каждой функции в классе. Если создано несколько экземпляров класса, каждый экземпляр получает независимый контекст. Это гарантирует, что изменения, внесенные в глобальную или базовую рабочую область в одном экземпляре класса, не повлияют на другие экземпляры того же класса.
В одиночной среде выполнения MATLAB все экземпляры класса имеют общий контекст. Если создано несколько экземпляров класса, они используют контекст, созданный первым экземпляром, который экономит время запуска и некоторые ресурсы. Однако любые изменения, внесенные в глобальную или базовую рабочую область одним экземпляром, влияют на все экземпляры класса. Например, если instance1 создает глобальную переменную A в одиночной среде выполнения MATLAB, затем instance2 может использовать переменную A.
Singleton MATLAB Runtime поддерживается только следующими продуктами для этих конкретных целей:
| Цель, поддерживаемая Singleton MATLAB Runtime | Создать Singleton MATLAB Runtime по.... |
|---|
| Надстройка Excel | Поведение по умолчанию для целевого объекта - singleton MATLAB Runtime. Выполнение других шагов не требуется. |
| Сборка .NET | Поведение по умолчанию для целевого объекта - singleton MATLAB Runtime. Выполнение других шагов не требуется. |
| COM-компонент | С помощью приложения компилятора библиотеки щелкните Параметры и добавьте -S в поле Дополнительные параметры, переданное в 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.
-v
Просмотрите шаги компиляции, включая:
Номер версии компилятора MATLAB
Имена исходных файлов при их обработке
Имена созданных выходных файлов при их создании
Вызов mbuild
-v параметр проходит -v опция для mbuild и отображает информацию о mbuild.
-w
Отображение предупреждающих сообщений. Использовать синтаксис
для управления отображением предупреждений.
Синтаксис | Описание |
|---|
-w list | Список предупреждений о времени компиляции с сокращенными идентификаторами вместе с их состоянием. |
-w enable | Включить все предупреждения о времени компиляции. |
-w disable[:<string>] | Отключить определенные предупреждения о времени компиляции, связанные с <string>. Опустить необязательный параметр <string> для применения disable действие для всех предупреждений о времени компиляции. |
-w enable[:<string>] | Включить определенные предупреждения о времени компиляции, связанные с <string>. Опустить необязательный параметр <string> для применения enable действие для всех предупреждений о времени компиляции. |
-w error[:<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=version' |
| Автономное приложение (без консоли Windows) | -W 'WinMain:appName,version=version' |
| Надстройка Excel | -W 'excel:addinName,className,version=version' |
| Приложение Hadoop MapReduce | -W 'hadoop:archiveName,CONFIG:configFile' |
| Приложение «Искра» | -W 'spark:appName,version' |
Примечание
Замените одинарные кавычки двойными при выполнении команды из командной строки Windows.
-X
Использовать -X игнорирование файлов данных, считываемых обычными функциями ввода-вывода файлов MATLAB во время анализа зависимостей. Дополнительные сведения см. в разделе Анализ зависимостей с помощью компилятора MATLAB. Примеры использования -X опция, см. %#exclude.
-Y
Использовать
для переопределения файла лицензии по умолчанию с указанным аргументом.
Примечание
-Y флаг работает только в режиме командной строки.
>>!mcc -m foo.m -Y license.lic