exponenta event banner

Вызвать параметры построения 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 анализирует компилятор. -v печатает полное имя пути к файлу MATLAB на этапе анализа зависимостей.

Примечание

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

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

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

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

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

Пакет может включать параметры замены для параметров компилятора, которые принимают имена и номера версий. Например, пакет для общих библиотек C, 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 cpplib:library_name -T link:lib
csharedlib

Библиотека C

-W lib:library_name -T link:lib
ccomCOM-компонент -W com:component_name,className,version -T link:lib
cexcelНадстройка Excel-W excel:addin_name,className,version -T link:lib
cjavaПакет Java ®-W java:packageName,className
dotnetСборка .NET

-W dotnet:assembly_name,className,framework_version,security,remote_type -T link:lib