Compiled MATLAB® code containing only MATLAB files are platform independent, as are Java®
.jar files. You can use these files on any platform, provided that the
platform has either MATLAB or MATLAB Runtime installed. However, if your compiled MATLAB code contains MEX files, which are platform dependent, do the
Compile your MEX file once on each platform where you want to run your application.
For example, if you are running the application on a Windows® machine, and you want it to run on the Linux® 64-bit platform, compile
twice, once on a PC to get
and then again on a
Linux 64-bit machine to get
Compile the package on one platform using the
-a flag of
mcc or the
AdditionalFiles option in a
compiler.build function to include the MEX file compiled on the
In the case above, you run
mcc on Windows and include the
-a flag to include
. It is not
necessary to explicitly include
. In this step , the
mcc command would be:
mcc -W 'java:mycomp,myclass' my_matlab_file.m -a my_mex.mexa64
For example, if you are running
mcc on a Windows machine and you want to ensure portability of the generated package
that invokes the
yprimes.c file (from
on the Linux 64-bit platform, execute the following
mcc -W 'java:mycomp,myclass' callyprime.m -a yprime.mexa64
callyprime.mcan be a simple MATLAB function, as follows:
function callyprime disp(yprime(1,1:4));
yprime.mexa64file is in the same folder as your Windows MEX file.
If you are unsure if your JAR file contains MEX files, do the following:
mcc with the
-v option to list the names of the MEX files, or enable
Verbose option in a
Obtain appropriate versions of these files from the version of MATLAB installed on your target operating system.
Include these versions in the archive by running
mcc with the
-a option, or use the
options in a
Toolbox functionality that runs seamlessly across platforms when executed from within the MATLAB desktop environment will continue to run seamlessly across platforms when deployed. However, if a particular toolbox functionality is designed to run on a specific platform, then that functionality will run only on that specific platform when deployed. For example, functionality from the Data Acquisition Toolbox™ runs only on Windows.
JAR files produced by MATLAB Compiler SDK™ are tested and qualified to run on platforms supported by MATLAB. For more information, see the Platform Roadmap for MATLAB.