Mex select wrong linker
Show older comments
I have a problem with mex linker.
I have two files a.cpp and b.cpp and I create both object files a.obj and b.obj through mex -c command. Now I want to create the executable mex file through mex a.obj b.obj but when I try I get the error "undefined reference to operator new". Then I try with -v and -n options and I see that matlab uses gcc to link files instead of g++!
How can I manually switch between c\c++ compiler?
2 Comments
Michal Misiaszek
on 31 Jul 2019
I have same problem and mex -setup c++ does not solve it.
Michal Misiaszek
on 31 Jul 2019
The solution is to give mex flag
mex -cxx
Answers (2)
Michal Misiaszek
on 31 Jul 2019
Try to use
mex -cxx
Sonam Gupta
on 26 Mar 2018
0 votes
mex -setup command helps you to select the desired compiler. Following documentation provides more information about the same:
2 Comments
Michal Misiaszek
on 31 Jul 2019
I use mex -setup command to set it to C++ but when I call mex to link object files it goes back to C instead of C++. How I can force mext to use g++ ? Please note I am just linking with MEX not compiling.
Wilson González
on 14 May 2021
Having a similar situation to link .o files previously compiled with gfortran. Have you found a solution?
Categories
Find more on External Language Interfaces 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!