Вызов опций сборки MATLAB

Укажите имена полных путей для создания кода MATLAB

Если вы задаете полное имя пути к MATLAB® файл на mcc командная строка, компилятор

  1. Разбивает полное имя на соответствующие путь и имена файлов (< path> и < file>).

  2. Заменяет полное имя пути в списке аргументов на "-I <path> <file>”.

Определение имен полных путей

Для примера:

mcc -m /home/user/myfile.m

будет рассматриваться как

mcc -m -I /home/user myfile.m

В редких ситуациях такое поведение может привести к потенциальному источнику путаницы. Например, предположим, что у вас есть два разных файла MATLAB с именами myfile.m и они проживают в /home/user/dir1 и /home/user/dir2. Команда

mcc -m -I /home/user/dir1 /home/user/dir2/myfile.m

было бы эквивалентно

mcc -m -I /home/user/dir1 -I /home/user/dir2 myfile.m

Компилятор находит myfile.m в dir1 и скомпилирует его вместо того, в dir2 из-за поведения -I опция. Если вы обеспокоены тем, что это может произойти, можно задать -v Опцию а затем посмотрим, какой файл MATLAB анализирует компилятор. The -v опция выводит полное имя пути к файлу MATLAB на фазе анализа зависимостей.

Примечание

Компилятор выдает предупреждение (specified_file_mismatch), если файл с полным именем пути включен в командную строку, и компилятор находит его где-то еще.

Использование пакетов для создания кода MATLAB

Пакеты обеспечивают удобный способ группировать наборы опций компилятора и вспоминать их по мере необходимости. Синтаксис опции пакета:

-B <bundle>[:<a1>,<a2>,...,<an>]

где bundle является предопределенной строкой, такой как cpplib или csharedlib или имя файла, содержащего набор mcc опции командной строки, аргументы, имена файлов и/или другие -B опции.

Пакет может включать параметры замены для опций компилятора, которые принимают имена и номера версий. Например, пакет для разделяемых библиотек на С, csharedlib, состоит из:

-W lib:%1% -T link:lib

Чтобы вызвать компилятор для создания общей библиотеки на C mysharedlib использование:

mcc -B csharedlib:mysharedlib myfile.m myfile2.m

В целом каждый %n% в пучке будет заменена соответствующая опция, заданная в пучке. Использование %% для включения % символ. Это ошибка, чтобы передать слишком много или слишком мало опции в пакет.

Примечание

Можно использовать -B опция с заменяющим выражением как в DOS или UNIX® приглашение. Если передано более одного параметра, необходимо заключить выражение, которое следует за -B в одинарных кавычках. Для примера,

>>mcc -B csharedlib:libtimefun weekday data tic calendar toc 

может использоваться как есть в подсказке MATLAB, поскольку libtimefun - единственный передаваемый параметр. Если бы в примере было два или более параметра, то кавычки были бы необходимы как в

>>mcc -B 'cexcel:component,class,1.0' ...
weekday data tic calendar toc

Доступные файлы пакета

Файл пакета

Создает

Содержание

cpplib

Библиотека C++

-W cplib: library_name -T ссылка: lib
csharedlib

Библиотека на C

-W lib: library_name -T ссылка: lib
ccomКомпонент -W com: component_name, className, version -T ссылка: lib
cexcelНадстройка Excel-W excel: addin_name, className, version -T ссылка: lib
cjavaJava® пакет-W java: packageName, className
dotnetСборка .NET

-W dotnet: assembly_name, className, framework_version, security, remote_type -T ссылка: lib