2.3 Limitations and Restrictions
There are some limitations and restrictions using the MATLAB Compiler. Therefore mcc
(Version 3.0) cannot compile:
• M-files containing scripts.
• M-files that use objects.
• Calls to the MATLAB Java interface.
• M-files that use the MATLAB commands input or eval to manipulate workspace
variables. Input and eval calls that do not use workspace variables will compile and
execute properly.
• M-files that use the MATLAB command exist with 2(!) input arguments.
• M-files that load text files. Data exchange via files is best done using MAT-files.
This ensures for example that files created under Linux would be readable under
Windows.
As a consequence of some bugs and known unresolved problems there exist some workarounds
to cope with this problems:
• Sometimes the mcc doesn’t find, for some reasons, M-files of external toolboxes,
even though the correct path was set within a -I statement. Therefore these M-files
must be copied to the same directory as the main M-files that need this helper
functions.
• Many functions of the Image Processing Toolbox, i.e. those functions for morpholog-
ical operations, are not found by the compiler. To enable compiling this functions,
these M-files must be copied into the working directory.
• Functions that use the MATLAB command imlincomb, i.e. many functions of the
Image Processing Toolbox, would return a compiler error when generating C++
stand-alone applications. Therefore functions that use functionality of the Image
Processing Toolbox can not be translated to C++ code in general. As a workaround,
generate C stand-alone applications instead of C++ stand-alone applications.
2.4 Stand-Alone MATLAB Compiler
There are two versions of the MATLAB Compiler, one that is included in the MATLAB
environment and a stand-alone version. The latter one may be used in a Makefile to
automatize the build process (for some workarounds).
Unlike the MATLAB version, which inherits the paths from MATLAB, the stand-alone
version has no initial path. So you will have to set a -I option (e.g. in a Makefile) for
all directories you want to include into your search path. Another method is to set up a
default path by making an mccpath file:
4
Comentarios a estos manuales