Deploying Standalone Executable with No MCR

Hello. I have a simple M file which creates a GUI, let the user chose a text file, apply a simple manipulation on the text file and then save the result.
I want to create a standalone application from this file. I read the help on the subject which requires installation of the MCR on the target machine. The MCR by itself is more than a 300MB file.
Yet I saw appliactions, such as IMATEST http://www.imatest.com/, which uses MATLAB yet requires nothing from the target machine but the deployed executable.
How could that be done? How can I create a completely independent application?
Thank You.

1 Comment

Serge
Serge on 22 Feb 2023
Moved: DGM on 22 Feb 2023
Well it's 2023 and the MCR is now a 3.7GB!
Plus it's now a zip with nearly 8k files, not a single file. (for windows)
This is a huge overhead for deplying MatLab code... (download > unzip > install > run)

Sign in to comment.

 Accepted Answer

As you have already heard, the MCR is absolutely required to deploy executables generated using MATLAB Compiler. According to the imatest instructions, they have two types of MATLAB-related files:
  1. P-coded (ie. .m files encrypted with the .p extension) which can be invoked directly from MATLAB.
  2. DLL versions of MATLAB code which do need the MCR ("Imatest IT/DLL also comes with the Matlab Compiler Runtime Libraries. More information can be found at the MathWorks website or below.")
However, if you really do want to generate a standalone executable from your MATLAB code without the use of the MCR, please consider using MATLAB Coder. This product generates C/C++ code from MATLAB code, but only supports a limited subset of the MATLAB language for code generation.

3 Comments

Hello.
The question is, can I selectively add few dll's into the EXE directory instead of the whole MCR package?
I want to write an application which is at most 100 lines of code (Loading TXT file, manipulate few strings, save it back), it doesn't sound logical to have 400MB package to run it :-).
Unfortunately, I don't think that is possible right now. I think the MCR is a monolith. Please feel free to confirm this with MathWorks Tech Support and also submit an enhancement request.
My understanding is that there is _some_ customization that can be done with MCR, but that the size difference is only about 30 Mb and the resulting MCR is only good for running the single program.

Sign in to comment.

More Answers (0)

Categories

Products

Tags

Asked:

on 31 May 2012

Moved:

DGM
on 22 Feb 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!