在VS2013中调试mex文件
来源:互联网 发布:java基础知识体系 编辑:程序博客网 时间:2024/05/22 12:46
上一篇简单介绍了一下怎么创建一个mex function并在Matlab中编译它,但是怎么在VS2013中进行Debug?
1. 有了包含mexfunction的cpp或c还不够,还需要建立一个工程,这里是新建一个DLL:VS->新建->win32项目->DLL。
2. 由于是64位机,所以需要把Project设置成x64 Debug,视图->属性管理器->双击Project->配置管理器->平台->选择x64
3. 由于mex function需要一些mex的头文件,比如mex.h,因此需要在项目中设置包含目录:
视图->属性管理器->双击“Debug->Win64”->配置属性->VC++目录->包含目录->敲入C:\Program Files\MATLAB\R2014b\extern\include(本文例)
注:这个比右键项目->属性一劳永逸,否则每个不同的项目都要重新设置一遍。
4. 上一篇讲了用mex functionname来编译一个mex文件,但那个文件不可以在VS中debug,如果想Debug,就要用mex -g。编译后你会发现,目录中除了mexw64文件外,还多了一个mexw64.pdb。
5. 在VS中,Ctrl+Alt+P,选择Matlab作为附加进程(此时会加载一些列符号),设置断点。回到Matlab进行调用,就可以进入断点调试了。
有的时候进入断点后虽然可以单步运行,但mexfunction无法return(可能显示未加载libmex.pdb之类的),我的解决方法是在return之前加入return YP_OUT,YP_OUT是一个mex function的输出参数:
#defineYP_OUTplhs[0]
如此,便可以向Matlab中返回mex文件的输出参数了。
同时,你可以看到,上述办法并没不需要在VS2013中编译这个DLL,实际上编译和连接都在Matlab中通过mex -g完成了。
- 在VS2013中调试mex文件
- 在VC6中调试MEX文件
- Mex文件在VS2010中调试方法
- MATLAB在VC2010中单步调试MEX文件
- VC++中建立MEX文件及调试
- vs2010中MEX文件建立与调试
- 配置vs2013 编辑mex文件
- 在matlab中调用mex文件
- 在Visual studio中生成.mex文件
- 转:在VS2010下编译、调试和生成mex文件
- 在Ubuntu下使用Eclipse调试mex源代码文件
- MATLAB中MEX文件的编写与调试
- MATLAB中MEX文件的编写与调试
- MATLAB中MEX文件的编写与调试
- vc++6.0调试mex文件
- 在matlab2010中使用VS2010建立MEX文件
- matlab2013b调用cpp文件,mex,VS2013配置问题
- MATLAB的MEX文件编写和调试
- iOS 保持界面流畅的技巧
- 自定义数组类型的排序
- 构建C1000k服务器
- ubuntu中修改了sudoers的权限导致,sudoers不能用的解决
- sitewhere整体结构architecture
- 在VS2013中调试mex文件
- virtualbox安装archlinux指南
- 动态测试一
- angularJS学习之路(五)---表达式
- Activity 的LauncherMode, 不可遗漏的知识点
- Gulp的安装与配置
- [LeetCode]Single Number
- java源码阅读记录1
- 第七章 内建控制结构