From: Jean on 28 Jun 2010 18:31 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 28 Jun 2010 18:56 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 29 Jun 2010 00:54 "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 29 Jun 2010 08:03
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 |