Error "File is not a MEX file" on Arch Linux
Show older comments
Hello!
I am trying to build a MEX file form a cpp code, but I always get the error "file.mexa64 is not a MEX file". This happens also with any c file (I tried with the timestwo.c example).
The only related information on the helper is about MEX Platform Compatibility, but the extension mexa64 is the correct one for my os.
I am running Matlab r2020a on Manjaro OS (Arch Linux) and using the gcc compiler (g++ for cpp), version 10.2.0 - might be this the problem? I read that the supported compiler is gcc 6.3.x but I couldn't retrieve that (super old) version so far. Also, I'd prefere not to downgrade to that version.
Any suggestion on how to fix the problem? I have no idea.
Thank you!
4 Comments
Till Blaha
on 9 Nov 2020
Hello Alessia,
I have the exact same behaviour in R2019a running on Arch Linux. Did you find a workaround?
Kind regards
Till
Till Blaha
on 9 Nov 2020
In fact: These error message is weird and I have now spent around 2 hours compiling ancient GCC's without success.. but running the function just worked! So, if probably compiled just fine and the error message might just arise during verification? Still a bit scary, but so far, everything I compiled worked.
At least, after working around another probably unrelated problem as https://nl.mathworks.com/matlabcentral/answers/103108-why-do-i-get-an-error-when-running-the-mex-file-from-a-non-standard-location-on-selinux
Alessia Perilli
on 26 Nov 2020
Arnaud Benjamin
on 19 Nov 2022
Edited: Arnaud Benjamin
on 19 Nov 2022
For me, I had this error message (truncated for clarity) :
/usr/local/MATLAB/R2022b/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.29' not found
The specified libstdc++.so.6 file is shipped with matlab. What probably happened, is that my OS's gcc (being up-to-date thanks to Arch Linux repos) produced a binary .mexa64 file which requires a more recent version of the standard lib than Matlab comes supplied with.
Simply relinking the above symlink to my system's /lib/libstdc++.so.6 fixed this error. You must also restart Matlab.
Answers (0)
Categories
Find more on MATLAB Compiler SDK 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!