Customize an Application
You can customize an application in several ways: customize the installer, manage files in the project, or add a custom installer path using the Application Compiler app or the Library Compiler app.
Customize the Installer
Change Application Icon
To change the default icon, click the graphic to the left of the Library name or Application name field to preview the icon.
Click Select icon, and locate the graphic file to use as the application icon. Select the Use mask option to fill any blank spaces around the icon with white or the Use border option to add a border around the icon.
To return to the main window, click Save and Use.
Add Library or Application Information
You can provide further information about your application as follows:
Library/Application Name: The name of the installed MATLAB® artifacts. For example, if the name is
foo, the installed executable is
foo.exe, and the Windows® start menu entry is foo. The folder created for the application is
The default value is the name of the first function listed in the Main File(s) field of the app.
Version: The default value is 1.0.
Author name: Name of the developer.
Support email address: Email address to use for contact information.
Company name: The full installation path for the installed MATLAB artifacts. For example, if the company name is
bar, the full installation path would be
Summary: Brief summary describing the application.
Description: Detailed explanation about the application.
All information is optional and, unless otherwise stated, is only displayed on the first page of the installer. On Windows systems, this information is also displayed in the Windows Add/Remove Programs control panel.
Change the Splash Screen
The installer splash screen displays after the installer has started. It is displayed along with a status bar while the installer initializes.
You can change the default image by clicking the Select custom splash screen. When the file explorer opens, locate and select a new image.
You can drag and drop a custom image onto the default splash screen.
Change the Installation Path
This table lists the default path the installer uses when installing the packaged binaries onto a target system.
|Mac OS X|
You can change the default installation path by editing the Default installation folder field under Additional installer options.
A text field specifying the path appended to the root folder is your installation folder. You can pick the root folder for the application installation folder. This table lists the optional custom root folders for each platform:
Change the Logo
The logo displays after the installer has started. It is displayed on the right side of the installer.
You change the default image in Additional Installer Options by clicking Select custom logo. When the file explorer opens, locate and select a new image. You can drag and drop a custom image onto the default logo.
Edit the Installation Notes
Installation notes are displayed once the installer has successfully installed the packaged files on the target system. You can provide useful information concerning any additional setup that is required to use the installed binaries and instructions for how to run the application.
Manage Required Files in Compiler Project
The compiler uses a dependency analysis function to automatically determine what additional MATLAB files are required for the application to package and run. These files are automatically packaged into the generated binary. The compiler does not generate any wrapper code that allows direct access to the functions defined by the required files.
If you are using one of the compiler apps, the required files discovered by the dependency analysis function are listed in the Files required for your application to run or Files required for your library to run field.
To add files, click the plus button in the field, and select the file from the file explorer. To remove files, select the files, and press the Delete key.
Removing files from the list of required files may cause your application to not package or not to run properly when deployed.
If you are using
mcc to package your MATLAB code, the compiler does not display a list of required files before
running. Instead, it packages all the required files that are discovered by the
dependency analysis function and adds them to the generated binary file.
You can add files to the list by passing one or more
-a arguments add the
specified files to the list of files to be added into the generated binary. For
-a hello.m adds the file
the list of required files and
-a ./foo adds all the files in
foo and its subfolders to the list of required files.
Sample Driver File Creation
Sample driver files are used to implement the generated component into an application in the target language.
The following target types support sample driver file creation in MATLAB Compiler SDK™:
C++ shared library
The sample file creation feature in Library Compiler uses
MATLAB code to generate sample files in the target language. In the app, click
Create New Sample to automatically generate a new MATLAB script, or click Add Existing Sample to upload a
MATLAB script that you have already written. After you package your functions, a
sample file in the target language is generated from your MATLAB script and is saved in a folder named
files are also included in the installer.
To automatically generate a new MATLAB file, click Create New Sample. This opens up a MATLAB file for you to edit. The sample file serves as a starting point, and you should edit it as necessary based on the behavior of your exported functions.
The sample MATLAB files must follow these guidelines:
The sample file must be a MATLAB script, not a function.
The sample file code must use only exported functions. Any user-defined function called in the script must be a top-level exported function.
Each exported function must be in a separate sample file.
Each call to the same exported function must be a separate sample file.
The input parameters of the top-level function are analyzed during the process. An input parameter cannot be a field in a struct.
The output of the exported function must be an n-dimensional numeric, char, logical, struct, or cell array.
Data must be saved as a local variable and then passed to the exported function in the sample file code.
Sample file code should not require user interaction.
The sample script is executed as part of the process of generating the target language sample code. Any errors in execution (for instance, undefined variables) will prevent a sample from being generated, although the build target will still be generated.
Additional considerations specific to the target language are as follows:
C++ mwArray API —
varargoutare not supported.
.NET — Type-safe API is not supported.
Python — Cell arrays and char arrays must be of size 1xN and struct arrays must be scalar. There are no restrictions on numeric or logical arrays, other than that they must be rectangular, as in MATLAB.
To upload a MATLAB file that you have already written, click Add Existing Sample. The MATLAB code should demonstrate how to execute the exported functions. The required MATLAB code can be only a few lines:
input1 = [1 4 7; 2 5 8; 3 6 9]; input2 = [1 4 7; 2 5 8; 3 6 9]; addoutput = addmatrix(input1,input2);
If you have already created a MATLAB sample file, you can include it in a
function for the supported targets using the
You can also choose not to include a sample file at all during the packaging step. If you create your own code in the target language, you can later copy and paste it into the appropriate directory once the MATLAB functions are packaged.
Specify Files to Install with Application
The compiler packages files to install along with the ones it generates. By default,
the installer includes a
readme file with instructions on installing
the MATLAB Runtime and configuring it.
These files are listed in the Files installed for your end user section of the app.
To add files to the list, click , and select the file from the file explorer.
JAR files are added to the application class path as if you had called
Removing the binary targets from the list results in an installer that does not install the intended functionality.
When installed on a target computer, the files listed in the Files installed
for your end user are saved in the
Additional Runtime Settings
|Type of Packaged Application||Additional Runtime Settings Options|
|Generic COM Components||
API Selection for C++ Shared Library
Create all interfaces — Create interfaces for shared libraries using both the
mwArrayAPI and the MATLAB Data API.
Create interface that uses the mwArray API — Create an interface for a shared library using the
mwArrayAPI. The interface uses C-style functions to initialize the MATLAB Runtime, load the compiled MATLAB functions into the MATLAB Runtime, and manage data that is passed between the C++ code and the MATLAB Runtime. The interface supports only C++03 functionality. For an example, see Generate a C++ mwArray API Shared Library and Build a C++ Application.
Create interface that uses the MATLAB Data API — Create an interface for a shared library using MATLAB Data API. It uses a generic interface that has modern C++ semantics. The interface supports C++11 functionality. For more information, see Generate a C++ MATLAB Data API Shared Library and Build a C++ Application.
Application Compiler | Library Compiler
- Create a C Shared Library with MATLAB Code
- Generate a C++ mwArray API Shared Library and Build a C++ Application
- Generate a C++ MATLAB Data API Shared Library and Build a C++ Application
- Generate .NET Assembly and Build .NET Application
- Create a Generic COM Component with MATLAB Code
- Generate Java Package and Build Java Application
- Generate a Python Package and Build a Python Application