Is there a way to bypass including the MCR and downloading the MCR in your package and still be able to build a package in R2014b?
Show older comments
I am running my deployable application on a closed network. I do not want it to download the MCR from the website nor do I want it to include the MCR in the executable. However, the application compiler will not allow you to package if neither of these options are selected.
Answers (1)
Abhiram Bhanuprakash
on 7 May 2015
0 votes
Hi Tommie,
MCR (MATLAB Compiler Runtime) is required to be installed on the machine on which you deploy the application. This is because, the machine on which you deploy typically does not have MATLAB installed, and MCR has all the libraries needed to run the compiled MATLAB code. Thus, you can view MCR as MATLAB without a GUI. For more info on MCR, visit this page
Given this fact, the reason why MATLAB compiler gives you only these two options is:
Option 1: Runtime downloaded from web: If you do not wish to include MCR as part of your compiled application, you can let users download it from the web, which makes the compiled application size ~ 5 MB
Option 2: Runtime included in package: If you wish to include the MCR as part of your compiled application, you can choose this. But, it will make the size of the application ~ 800 MB.
Hope this helps,
Abhiram.
8 Comments
Abhiram Bhanuprakash
on 7 May 2015
Hi Tommie,
Tommie Heard
on 7 May 2015
Abhiram Bhanuprakash
on 8 May 2015
Hi Tommie,
I think I got your query now.
Option 1: Runtime downloaded from web means, the user can download the MCR from the internet, if he doesn't have it installed already. If he has it installed already, he need not download it! He can just run the application and it works!
Hope this clears the doubt,
Cheers!
Abhiram.
PS: If you like this answer, please accept it. This is not for my personal points, but if others have similar doubts, they can benefit from it.
Arnold Koopman
on 1 Oct 2017
But Abhiram, it looks like the installer first tries to contact mathworks, to check the runtime version or something. So if the machine cannot ftp to mathworks, the installer doesn't run.
Image Analyst
on 1 Oct 2017
I don't believe that's true. You can either send your user the MCR installer yourself, or have them download it. Once they have it and run it, I don't believe it contacts the Mathworks or requires an internet connection. Why do you think it does?
Mike Alonzo
on 6 Feb 2020
I think Arnold is correct. I am behind a firewall with no internet access. I have a matlab exe from a coworker that does not have the MCR bundled with it. When I run the exe, it immediately tries to connect to the internet and fails with an http error, even though I have the correct MCR on my machine. The only way we've gotten around this is to bundle the MCR with the exe. Is there a way to point the exe to my MCR if it's not bundled with it?
AJ
on 11 Feb 2021
We also have this problem. The client already has MCR installed on their machine. We do not want to include either the web link or the MCR in our COM object, however the matlab library compiler front end does not allow you to exclude the MCR from the COM object.
When we choose the "download from web" option the package fails as it cannot access the mathworks web site.
John Taseff
on 8 Jul 2022
We have the same issue. It is a hassle to get IT to allow installing the MCR for each user, but this only needs to be done once.
The problem is that even after MCR is installed, every time we want to deploy a new version of the compiled app, it still asks for admin rights only so it can install the MCR, which is already installed.
Categories
Find more on Introduction to Installation and Licensing in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!