MATLAB Answers

0

Deploying a standalone application to computer with no install privileges

Asked by Jim Hokanson on 4 Jul 2018
Latest activity Answered by Jim Hokanson on 9 Jul 2018
I wrote a simple GUI which I was planning on placing in a standalone application to be run on a computer without Matlab. I included the runtime because I don't think the person running the program will have any install privileges. Unfortunately when I want to run the program on my computer it tries to run an installation program. From what I can tell it is not possible to generate executables using the deployment tool that can be run without installing something.
However, there are numerous other deployment options. Do any of these support running code without installing, even if a bit of extra wrapping work is required?

  0 Comments

Sign in to comment.

2 Answers

Answer by Jim Hokanson on 9 Jul 2018

I ended up switching to Octave for this project. Octave can be run without installation. The zip download is about 400 MB which needs to be unzipped to run. Inside is a octave.bat file which can be modified to run code on startup (by default it just start a prompt, either GUI or CLI).
The conversion process took somewhere between 8 - 16 hours with most of the time spent on 1) writing code that generates code for generating figures (a modification/cleanup of fig2m on the file exchange, no openfig in Octave) 2) code that writes tabular looking data to a listbox (no uitable in Octave) and 3) handling differences in xlsread functionality between Matlab and Octave. There were a lot of other small changes I needed to make the code but those were the big changes. In the end I was fortunate that there was enough supported with classes and packages that I was able to port my code without too much of a hassle.
It is possible to compile a program in Octave but I found it difficult to extract the necessary files (there is no neat packaging service available).

  0 Comments

Sign in to comment.


Answer by Matt J
on 4 Jul 2018
Edited by Matt J
on 4 Jul 2018

Maybe the Matlab Coder? I.e., convert your code to C/C++, compile that, and deploy the executable.

  1 Comment

I might need to fall back to using that on the internals but I was hoping for an alternative which would support GUIs. My understanding of the documentation is that the C/C++ conversion option does not support GUIs. I don't know if it is possible to use the Excel option, or Java, or .Net, or some local web based option .... Or perhaps someone has had luck using Octave?

Sign in to comment.