Если вы указываете, что полный путь называет к файлу MATLAB® на mcc
командная строка, компилятор
Повреждает полное имя в соответствующий путь и имена файлов (<path
> и <file
>).
Заменяет имя полного пути в списке аргументов с “-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
) если файл с именем полного пути включен в командную строку, и компилятор находит его где-то в другом месте.
Пакеты обеспечивают удобный способ сгруппировать наборы параметров компилятора и вспомнить их по мере необходимости. Синтаксис опции пакета:
-B <bundle>[:<a1>,<a2>,...,<an>]
где пакет является любой предопределенной строкой, такой как cpplib
или csharedlib
или имя файла, который содержит набор mcc
параметры командной строки, аргументы, имена файлов и/или другой -B
опции.
Пакет может включать заменяющие параметры для параметров компилятора, которые принимают имена и номера версий. Например, пакет для C совместно использовал библиотеки, csharedlib
, состоит из:
-W lib:%1% -T link:lib
Вызвать компилятор, чтобы произвести C совместно использовало библиотеку mysharedlib
использование:
mcc -B csharedlib:mysharedlib myfile.m myfile2.m
В общем случае каждый %n%
в пакете будет заменен соответствующей опцией, заданной к пакету. Использование
включать %
символ. Это - ошибка передать слишком многих или слишком мало опций к пакету.
Можно использовать -B
опция с выражением замены, как в подсказке UNIX® или DOS. Если больше чем один параметр передается, необходимо заключить выражение, которое следует за -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: |
csharedlib | Библиотека C | - W lib: |
ccom | COM-компонент | - W com: |
cexcel | Дополнение Excel | - W excel: |
cjava | Пакет Java® | - W java: |
dotnet | Блок.NET |
|