Matlab 设置编译器出问题?嗯,这坑我也踩过。Matlab 的 mex 和 mbuild配置老是出错,大多是因为它默认只认老版本的 VS 路径,比如 2005、2008、2010 那种老古董。关键是从Windows SDK 7.0以后,注册表的路径就跟 Matlab 的预期不一样了,导致它找不到正确的编译器目录。
我整理了个比较实用的方案,主要针对VS2012和 Matlab 不兼容的问题。文件里有个 Word 文档,标清了你要改的地方,还附带两个重要目录,直接丢进matlab/bin下就行。如果你安装路径比较标准,那基本是复制粘贴就能跑。如果不是,那你得手动设置下cl.exe和mt.exe的位置,按照我文档里写的改改就能用了。
我自己测试过,mex和mbuild都能正常用了。调试起来稍微麻烦点,不过比卡半天找不到路径省心多了。是搞数值仿真、编写 MEX 文件的同学,肯定会遇到这类问题,早点少掉头发。
如果你正好用 VS2012,又遇到 Matlab 死活不认编译器的情况,建议你看看这套配置,真能省不少事。需要了解更多,下面这些链接也挺有用: