matlab在关联编译器的时候,会出现找不到编译器的问题,原因是matlab要找windows sdk的mt.exe,找不到报错的.因为vs2012在安装时,windows sdk的mt.exe位置变了,而matlab还是按照老的路径找,肯定找不到(原来在windows sdks下面,现在在windows kits下面).
如果你的环境是64位windows,并且vs2012装在默认目录下,matlab是64位版本,那么直接使用附件的文件,把他们添加到matlab/bin/win64下面的相关目录下即可,一个4个文件,放在2个目录.
如果你的vs目录不是默认的,或者是32位版本,或者vs版本不是2012,那么需要修改附件里面的相关目录的设置(其实就是cl.exe和mt.exe的目录位置),
我修改的方法是直接设置成目标目录(默认安装的位置),不是读注册表,这样简单,也无需修改注册表,以及建立什么目录链接(mklink).当然如果你的mt.exe目录不在Windows kits下,那需要修改附件的文件.
附件里有一个word文件,是我修改的标识,当做帮助来用.
使用方法,
1 把附件相关的4个文件添加到matlab/bin/win64下面的2个相关目录
2 在matlab 里面运行 mbuild -setup, 然后选 y, 再选择2012的那个项目,再选y
3 这是应该成功了
4 mex -setup也是一样的.
有一个奇怪的情况,就是.stp文件必须直接修改,我在桌面修改,然后覆盖到matlab目录后,其实并没有覆盖,还是原来的文件. 修改时要注意.
1