How to install/run MATLAB application compiled for Windows on Linux?

12 views (last 30 days)
I have a package from a company which is built on MATLAB (using MCR R2013a) for MS-Windows. Is it possible to run this under Linux - Fedora 17 64-bit in my case?
From what I've read there are potentially two options:
  1. Run the app using MCR for Linux.
  2. Install and run the whole app under Wine.
Option 1 would be my preferred choice. I've installed the Linux 64-bit MCR, but I'm not sure how to run the application this way - or if it's even possible, since (as I understand it) the entry point for the app is a Windows .exe which is needed to decrypt the MATLAB modules - and for all I know there may be plenty of front-end code for the app in there as well. So I assume the supplier of this package would need to provide a separate package compiled specifically for Linux - is that correct?
So I tried option 2. The Windows installer (.exe) for the application seems to run fine, however the MCR part of the installation failed with a Java VM crash. Next I downloaded the Windows 32-bit version of the MCR (R2013a) directly from the MathWorks site and tried to install that by itself in a fresh Wine directory, and I got the same failure. The WinZip self-extractor successfully unloads its files, then a MATLAB splash screen appears, and within about a second I get this output on the terminal used to launch wine:
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0xf75200ef, pid=34, tid=11
#
# JRE version: 6.0_17-b04
# Java VM: Java HotSpot(TM) Client VM (14.3-b01 mixed mode windows-x86 )
# Problematic frame:
# C 0xf75200ef
#
[error occurred during error reporting , id 0xc0000005]
Nothing happens until a few minutes later when a timer expires and the installation aborts.
Wine version is 1.5.29 - that's the version packaged with F17. I can build the latest (stable or dev) if needed.
For option 2 then, my immediate question is whether installing MCR under Wine should work. Are any extensions needed for Wine (eg, via Winetricks) to make this work?
Or, are there other options I'm overlooking? (Aside from running Windows in a VM, that is...)
  3 Comments
Walter Roberson
Walter Roberson on 23 Apr 2016
For option 1: Yes, the provider would need to compile on Linux and provide the result.
For option 2: I do not have that information at this time.
Don Estabrook
Don Estabrook on 26 Apr 2016
Kevin Gustke: To answer your question - no, sadly I did not find a solution back in 2013. I had to put that project on hold, largely because of this. It might be worth trying option 2 again with current versions of Wine and Java, but I'm guessing by your question that it still doesn't work.
Walter Roberson: Thanks for your answer on option 1. That seems to limit the portability of Matlab apps, unless I'm misunderstanding the intent there. (I'm a total noob on MATLAB, so that might indeed be the case.) In my situation, the supplier of the app used only Windows internally and had no interest in porting to other platforms, even if it's as simple as a compile. (I asked.) They weren't opposed to me running it on Linux, but they didn't want to spend any of their resources on it. I was really hoping that the modules were platform-independent, and all the platform-specific bits were in the MCR.
About option 2, it might still be "interesting" for the MATLAB devs to figure out why the MCR installer elicits the Java crash under Wine, if it still does.

Sign in to comment.

Answers (0)

Categories

Find more on Downloads in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!