网上有很多关于VS调试mex文件的教程,不过他们的VS和Matlab版本都不高,一般得到的都是mexw32文件,并且还有些地方有错误。楼主借鉴了很多人的博客,并自己在Matlab 2014b和Visual Studio 2013上进行了尝试,列举出了所有可能出现的问题即解决方案,并给出了很详细的“傻瓜”教程,可以确保调试的正常进行。
(本博客系原创,转载请注明出处:http://blog.csdn.net/xuexiyanjiusheng/article/details/46862635)
matlab里面无法单步调试mex函数,故需转到VS上面调试,这里采用VS2013.
1、VC中编写Mex函数
新建一个win32 dll空项目。
创建项目: Win32->Win32项目,名称:ent
(这里项目的名称最好和要用的函数名称一样)
选择DLL (D) ->完成.
2、新建工程后,在源文件里面自动就有ent.cpp和ent.def。把之前编写好的MEX函数ent.cpp文件复制到系统生成的ent.cpp的#include"stdafx.h"之后。
3、配置项目属性。
l打开项目属性配置页 -> C++ -> 附加包含目录 加入MATLAB安装目录下的\extern\include 路径。
l连接器 -> 附加库目录 加入MATLAB的\extern\lib\win64\microsoft 路径。
l 连接器 -> 输入 -> 附加依赖项 输入libmx.liblibeng.lib libmat.lib libmex.lib这四个