最近在看tracking方面的论文和代码,发现大多数都是用matlab和c++混合编译的。对于linux和windows这两个系统,暂时还没有碰到编译器不兼容的问题,但是mac上面却有问题,在命令行里输入:
mex -setup
会有下面的错误提示:
Error using mex
No supported compiler or SDK was found. For options, visit http://www.mathworks.com/support/compilers/R2015b/maci64.html.
这是因为我用的是Xcode8,mac 系统版本是12.11,虽然matlabR2015b支持Xcode8,但是却找不到Xcode8,所以需要改下查找位置,打开应用程序下面的文件夹:/Applications/MATLAB_R2015b.app/bin/maci64/mexopts
找到clang++_maci64.xml
和 clang_maci64.xml
这两个文件。
打开文件,拉到最后,增加下面绿色线对应的几行代码:
记住两个文件都要修改,这样才能保证不论是c编译器还是c++编译器都可以找得到!
打开matlab,在命令行里输入:
mex -setup C
mex -setup C++
就会看到表示成功的提示了。