Compiled Matlab exe hangs when calling my Mex function
Afficher commentaires plus anciens
Hi, I have a Matlab GUI which uses a Mex file I created. Everything works fine when executing it in Matlab. I then created an exe file using deploytool, and the build process completes successfully, launching my GUI. However, when the code arrives at the first call to one of my mex functions, it just hangs there.
In order to check if my Mex code was causing the trouble, I recompiled the mex DLL with the whole mexfunction body commented out, so the mex function should just return after doing nothing. Even so, the compiled matlab exe hangs when calling this empty mex function.
Anyone knows what is causing the trouble?
And why is typing this message so difficult? The cursor pauses almost every character that I type ?
1 commentaire
Jan
le 25 Juin 2012
The keyboard latency in this forum reduces the usability of the interface dramatically for some users, see http://www.mathworks.com/matlabcentral/answers/5560-do-you-suffer-from-keyboard-latency-in-this-forum . Please send another enhancement request to files@mathworks.com .
Réponses (1)
Kaustubha Govind
le 20 Juin 2012
0 votes
There is perhaps an error message that is causing the application to hang. Have you tried compiling your application without suppressing the command/shell window? Use the "Console Application" option instead of Windows standalone. When you run the thus compiled application, you should see a command window open in the background. See if there is any error displayed there?
5 commentaires
Kyung Ho Park
le 25 Juin 2012
Image Analyst
le 25 Juin 2012
You probably forgot to specify the full path of some file, for example in loadlibrary(). If you used just the base filename, it might not find it. Do you have any output to the screen that you can share? It's probably not a bug. Finally, check the FAQ for suggestions: http://matlab.wikia.com/wiki/FAQ#My_standalone_executable_won.27t_run_on_the_target_computer._What_can_I_try.3F
Kaustubha Govind
le 25 Juin 2012
@Kyung Ho Park: I'm assuming that you have installed the MCR corresponding to R2011b on your XP machine (which I assume is also 64-bit)? You cannot run an application compiled using R2011b 64-bit against MATLAB libraries from a different version/platform. Or do you mean that the issue only occurs when you call into a MEX-file but not otherwise? Could you try running "which mexFunctionName" and print the result just before running the MEX-file? This will tell you if the issue might be that the compiled executable can't find the file in the first place.
Kyung Ho Park
le 5 Juil 2012
Modifié(e) : Kyung Ho Park
le 5 Juil 2012
Kaustubha Govind
le 6 Juil 2012
Glad you worked that out. Thanks for posting your solution!
Catégories
En savoir plus sur MATLAB Compiler dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!