Before you can integrate MATLAB functions into external applications, you need to compile them for the target language. MATLAB Compiler SDK™ includes two apps and a command-line compiler for this purpose. The apps guide you in specifying functions to compile and in creating an installer. Target-language developers install the compiled code on the development system, along with the MATLAB Runtime, which is necessary to run the code. At the command-line, you can compile the MATLAB functions into a binary package the target language developer uses in developing their applications.
Library Compiler | Package MATLAB programs for deployment as shared libraries and components |
Production Server Compiler | Package MATLAB programs for deployment to MATLAB Production Server |
libraryCompiler | Build and package functions for use in external applications |
productionServerCompiler | Test, build and package functions for use with MATLAB Production Server |
mcc | Compile MATLAB functions for deployment |
mbuild | Compile and link source files against MATLAB generated shared libraries |
deploytool | Compile and package functions for external deployment |
componentinfo | Query system registry about COM component created with MATLAB Compiler SDK |
isdeployed | Determine whether code is running in deployed or MATLAB mode |
ismcc | Test if code is running during compilation process (using mcc) |
ctfroot | Location of files related to deployed application |
figToImStream | Stream figure as byte array encoded in specified format |
webfigure | Export a figure to a deployed application |
getmcruserdata | Retrieve MATLAB array value associated with a given key |
setmcruserdata | Associate MATLAB data value with a key |
%#function | Pragma to help MATLAB Compiler locate functions called through feval, eval, Handle Graphics callback, or objects loaded from MAT-files |
Install an ANSI C or C++ Compiler
Installing a supported C/C++ compiler
Compile C/C++ Shared Libraries with Library Compiler App
The Library Compiler App is a graphical tool for compiling and packaging C/C++ shared libraries.
Compile C/C++ Shared Libraries from Command Line
Using the command line compiler to create C/C++ shared libraries.
Distribute C/C++ Shared Libraries to Application Developers
Distribute the following to the application developer integrating the shared library:
This example shows how to transform a MATLAB function into a .NET assembly.
Compile .NET Assemblies from Command Line
Using the mcc command line to build your assembly
Distribute .NET Assemblies to Application Developers
Distribute the following to the application developer integrating the .NET assembly:
Configure Your Java Environment
Configuring the Java® environment for compilation of MATLAB code and development of Java applications
Compile Java Packages with Library Compiler App
The Library Compiler App is a graphical tool for compiling and packaging Java packages.
Compile Java Packages from Command Line
Using the command line compiler to create Java packages.
Map Functions to Java Class Methods
Mapping MATLAB functions to Java classes
Distribute Java Packages to Application Developers
Distribute the following to the application developer integrating the package:
Compile Python Packages with Library Compiler App
MATLAB Compiler SDK cannot compile MATLAB code that uses the MATLAB Python® interface.
Compile Python Packages from Command Line
MATLAB Compiler SDK cannot compile MATLAB code that uses the MATLAB Python interface.
Distribute Python Packages to Application Developers
Distribute the following to the application developer integrating the package:
Compile Deployable Archives with Production Server Compiler App
The Production Server Compiler App is a graphical tool for compiling and packaging deployable archives.
Compile Deployable Archives from Command Line
Using the command line compiler to create deployable archives.
Build Excel Add-In and Deployable Archive
The Excel integration with MATLAB Production Server builds two artifacts. One is for the server and one is for the client.
Compile COM Components with Library Compiler App
How to create a COM component
Compile COM Components from Command Line
How you can use the mcc
command
instead of the GUI to build COM objects
Distribute COM Components to Application Developers
Distribute the following to the application developer integrating the component:The Library Compiler app generates an installer that packages all of the binary artifacts required for distributing a COM component.
How to customize the look and feel of the installer generated by the compiler app
Manage Required Files in Compiler Project
How to ensure that the compiler includes all of the required MATLAB files when generating the application
Specify Files to Install with Application
How to include extra files to be installed along with the application
The compiler attempts to package any support packages required by an application.
Simplify Compilation Using Macros
Information on macros and how they can simplify your work
Using path name, bundles, and wrapper files to build your MATLAB code
Differences Between Compiler Apps and Command Line
You perform the same functions using either the compiler apps
or the mcc
command-line interface.
How Does MATLAB Deploy Functions?
To deploy MATLAB functions, the compiler performs these tasks:
Writing MATLAB code that is sure to compile
MATLAB code that you want to deploy often carries state—a specific data value in a program or program variable.
MATLAB Runtime Component Cache and Deployable Archive Embedding
How to override the default deployable archive embedding behavior and how to use MATLAB Runtime Component Cache
Using the MATLAB Runtime User Data Interface
Information on how to access MATLAB Runtime data
Display the MATLAB Runtime Initialization Messages
Procedure to create console messages for end users
MATLAB Functions That Cannot Be Compiled
Functions not able to be compiled with MATLAB Compiler™ or MATLAB Compiler SDK
MATLAB Compiler SDK Limitations
Restrictions regarding what can be compiled