If you specify a full path name to a MATLAB® file on the mcc
command
line, the compiler
Breaks the full name into the corresponding
path name and file names (<path
> and <file
>).
Replaces the full path name in the
argument list with "-I <path> <file>
".
For example:
mcc -m /home/user/myfile.m
would be treated as
mcc -m -I /home/user myfile.m
In rare situations, this behavior can lead to a potential source
of confusion. For example, suppose you have two different MATLAB files
that are both named myfile.m
and they reside in /home/user/dir1
and /home/user/dir2
.
The command
mcc -m -I /home/user/dir1 /home/user/dir2/myfile.m
would be equivalent to
mcc -m -I /home/user/dir1 -I /home/user/dir2 myfile.m
The compiler finds the myfile.m
in dir1
and
compiles it instead of the one in dir2
because
of the behavior of the -I
option. If you are concerned
that this might be happening, you can specify the -v
option
and then see which MATLAB file the compiler parses. The -v
option
prints the full path name to the MATLAB file during the dependency
analysis phase.
Note
The compiler produces a warning ( |
Bundles provide a convenient way to group sets of compiler options and recall them as needed. The syntax of the bundle option is:
-B <bundle>[:<a1>,<a2>,...,<an>]
where bundle is either a predefined string such as cpplib
or csharedlib
or
the name of a file that contains a set of mcc
command-line
options, arguments, filenames, and/or other -B
options.
A bundle can include replacement parameters for compiler options
that accept names and version numbers. For example, the bundle for
C shared libraries, csharedlib
, consists of:
-W lib:%1% -T link:lib
To invoke the compiler to produce the C shared library mysharedlib
use:
mcc -B csharedlib:mysharedlib myfile.m myfile2.m
In general, each %n%
in the bundle will be
replaced with the corresponding option specified to the bundle. Use %%
to
include a %
character. It is an error to pass too
many or too few options to the bundle.
Note
You can use the >>mcc -B csharedlib:libtimefun weekday data tic calendar toc can be used as is at the MATLAB prompt because >>mcc -B 'cexcel:component,class,1.0' ... weekday data tic calendar toc |
Bundle File | Creates | Contents |
---|---|---|
cpplib | C++ library | -W cpplib: |
csharedlib | C library | -W lib: |
ccom | COM component | -W com: |
cexcel | Excel Add-in | -W excel: |
cjava | Java® package | -W java: |
dotnet | .NET assembly |
|