Prev: AM
Next: str2num
From: Jean on
Hello to all of the Matlab community,

Recently I received the task of making my Matlab applications to run on computers with no Matlab environment installed. I used mcc to create these standalone applications, but when I try them on another computer they do not work (it tells me that a certain dll is not found). More, when I first started to work with Matlab, I was using a standalone application made in Matlab. Please tell me what should I do?

Best regards,
Jean.
From: ImageAnalyst on
Jean:
I just ran into (and "fixed") this today. It was very bizarre. When
I tried to run the computer on the end user's computer, it said that
it couldn't run because it couldn't find msvcr90.dll. I searched the
computer and it was there. I uninstalled the app and reinstalled -
same problem. I ran Microsoft's Visual C redistributable installer,
which I got from the Microsoft web site, and had the same problem. I
recompiled my app with the mcc command and installed it on the end
user's computer. Still no luck. I ran Dependency walker on it and it
said that the executable couldn't find msvcr80.dll and msvcr90.dll,
even though both were in some weird folder of the Windows folder (not
the regular system32 folder). I copied those DLL's into my app's
folder and that didn't help.

Then I ran it on my computer and had the same problem. But it ran OK
in MATLAB. I just deleted the exe and all the C files and ran
Deploytool and rebuilt the executable. Still no luck. Then I deleted
the executable and compiled it just with mcc on the command line.
Finally it worked! Nothing I did should have made it not work, or
should have fixed it. Yet it was now working, so what could I say? I
just told the user "I don't know why it was broken, or what I did to
fix it, but, whatever....at least it's working."

Sadly, one-off snafus of this sort are all too common when I try to
install standalone executables on end users' systems.

I don't know if my story will help you but there you have it. Good
luck. And you can always call the Mathworks for help.

In your case, maybe it's as simple as you forgot to bundle your custom
DLL in with Deploytool or forgot to ship it as a separate file, or
else placed it in a folder not on the path, or forgot to register it,
or who knows?
-ImageAnalyst

From: Christopher on
"Jean " <domnul_jan(a)yahoo.com> wrote in message <i0b7rb$tk$1(a)fred.mathworks.com>...
> Hello to all of the Matlab community,
>
> Recently I received the task of making my Matlab applications to run on computers with no Matlab environment installed. I used mcc to create these standalone applications, but when I try them on another computer they do not work (it tells me that a certain dll is not found). More, when I first started to work with Matlab, I was using a standalone application made in Matlab. Please tell me what should I do?
>
> Best regards,
> Jean.

Jean,
Remember that any executables compiled from the MATLAB Compiler must be running on a system which also has the MATLAB Compiler Runtime (MCR) installed on it. This means that you must install the MCR on the computer you wish to run the executable from. The MCR is provided with the MATLAB Compiler and is a royalty free product so is free to distribute anywhere. You should find it in the directory:

matlabroot/ver/toolbox/compiler/deploy/win32/MCRInstaller.exe

This sounds as though it is the problem you are having..

Chris
From: Jean on
Hello Chris,

Thank you for your help. Indeed, installing the MCR solved my problem. The only thing right now is that the speed of execution is the same as using Matlab.


Best regards,
Jean


"Christopher " <christopher.badman(a)au.saabgroup.com> wrote in message <i0bu9c$q1m$1(a)fred.mathworks.com>...
> "Jean " <domnul_jan(a)yahoo.com> wrote in message <i0b7rb$tk$1(a)fred.mathworks.com>...
> > Hello to all of the Matlab community,
> >
> > Recently I received the task of making my Matlab applications to run on computers with no Matlab environment installed. I used mcc to create these standalone applications, but when I try them on another computer they do not work (it tells me that a certain dll is not found). More, when I first started to work with Matlab, I was using a standalone application made in Matlab. Please tell me what should I do?
> >
> > Best regards,
> > Jean.
>
> Jean,
> Remember that any executables compiled from the MATLAB Compiler must be running on a system which also has the MATLAB Compiler Runtime (MCR) installed on it. This means that you must install the MCR on the computer you wish to run the executable from. The MCR is provided with the MATLAB Compiler and is a royalty free product so is free to distribute anywhere. You should find it in the directory:
>
> matlabroot/ver/toolbox/compiler/deploy/win32/MCRInstaller.exe
>
> This sounds as though it is the problem you are having..
>
> Chris
 | 
Pages: 1
Prev: AM
Next: str2num