Why do I get a, Invalid MEX-file error .
Ältere Kommentare anzeigen
I'm trying to run a mex file compiled in VS2010, but when I call it from Matlab the prompt return the next error message.
Invalid MEX-file 'C:..\MyFunction.mexw32': The specified procedure could not be found.
Why?
4 Kommentare
stefano davoli
am 21 Apr. 2017
Same problem. Any sol found?
James Tursa
am 21 Apr. 2017
@Stefano: What are your specific circumstances? (Compiler, MATLAB versions, how did you do the compile, etc.)
Image Analyst
am 21 Apr. 2017
I don't believe the new 64 bit MATLAB versions can run 32 bit DLLs. At least I couldn't call one of mine when I tried. How many bits is your OS and MATLAB?
Walter Roberson
am 21 Apr. 2017
In MS Windows (and OS-X, and Linux) 64 bit executables cannot call 32 bit libraries. This is a limitation of the operating system architecture.
(I have never encountered an operating system that allowed this, but I could not say for sure that no operating system allows it.)
Antworten (2)
Image Analyst
am 10 Dez. 2012
How are you trying to run the mex file? As I understand it you don't run these, you call them from an m-file since they are basically DLLs. What happens if you say
>> which -all MyFunction
on the command line? Are you sure it's on your search path? If you say "path" does the folder where the mex file lives appear on the path?
1 Kommentar
Walter Roberson
am 10 Dez. 2012
Also, are you trying to run it from a 32 bit MATLAB or a 64 bit MATLAB ? .mexw32 is only for 32 bit MATLAB.
Ken Atwell
am 10 Dez. 2012
0 Stimmen
Could your MEX-File require another .DLL, and it is that DLL that cannot be found? Use a tool like Dependency Walker to display the functions available inside the MEX-File ("mexFunction" at a minimum should be there), and anything it may depend on. Anything in red may not be visible to MATLAB.
Kategorien
Mehr zu MATLAB Compiler finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!