vs调试MEX文件
http://www.cnblogs.com/lukylu/p/4042306.html
matlab里面无法单步调试mex函数,故需转到VS上面调试,这里采用VS2010。
参考网上很多人写的方法但都很乱,杂,试了多次都没有成功。今天终于解决了,现把方法记录下来。
1、VC中编写Mex函数
新建一个win32 dll 空项目。
2、添加源文件Test.cpp,编写MEX函数,MEX函数编写方法这里不赘述了。
3、配置项目属性。
打开项目属性配置页,C++ -> 附加包含目录 加入MATLAB安装目录下的 \extern\include 路径。
连接器 -> 附加库目录 加入MATLAB的 \extern\lib\win32(win64)\microsoft 路径。
连接器 -> 输入 -> 附加依赖项 输入libmx.lib libeng.lib libmat.lib libmex.lib 这四个lib文件。
在Linker-General-Output File:改成
.\Debug\(ProjectName).mexw32(mexw64)(64位系统相应改成64)
Source Files- Add - New Item新建模块定义文件Test.def
并为其添加内容
LIBRARY ;"Test"
EXPORTS mexFunction
在Linker-Input-Module Definition File添加:Test.def
matlab是 64位的话,VS编译器必须为64位,需要手工调整!
4、F7生成解决方案,如果以上都正确,便会在工程Debug目录下生成一个(ProjectName).mexw32文件。
5、在VS中单步调试MEX函数。
将matlab的current folder 设置成mexw32文件所在的路径,即Debug目录。(这步非常重要,要不无法调试调用)
vs2010-Tools-附加到线程 Attach to process-选择matlab。
vs调试MEX文件的更多相关文章
- 如何在VC++ 中调试MEX文件
MEX文件对应的是将C/C++文件语言的编写之后 得到的相关文件加载到Matlab中运行的一种方式, 现对于Matlab 中的某些程序运行效率而言, C/C++ 代码某些算法的领域上面执行效率很高,若 ...
- 转 Visual C++6.0 与matlab联合编程(2)----Visual C++6.0 环境下编译和调试MEX文件
我的最初想法是利用matlab的mex命令调用C++程序生成动态链接库的,但是测试程序(文中另附)通过了,自己的实际应用程序却没有过.还是把方法贴在这儿,以便自己以后进行整理. http://shij ...
- Qt Creator下应用CMake项目调试mex文件
网上可以找到很多应用Visual Studio编写.编译mex文件,并与MATLAB联合调试的文章.但这只限于Win平台,网上许多源码都是.mexa64的文件,它们的作者是怎么调试的呢?这里我介绍一下 ...
- Mex文件在VS2010中调试方法
http://www.cnblogs.com/lukylu/p/4042306.html matlab里面无法单步调试mex函数,故需转到VS上面调试,这里采用VS2010. 参考网上很多人写的方法但 ...
- MEX文件编写和调试
作者kaien,2010/02/16 以前我写过一篇文章,详细的介绍过MEX的格式,语法,编译,调试等.可惜记不清放在哪里了.而最近又用到MEX编程,所以只能重新温习一番.时间有限,只记下简要流程和注 ...
- 在Visual Studio中开发Matlab mex文件,生成mexw64/mexw32
csunking贡献,2015-9-22 1712 1. 概述 通过使用C/C++与Matlab混合编程,既可以享受到C代码快速执行的速度,又可以方便的使用Matlab众多的库函数和强大的绘图功能 ...
- C#报错:创建调试信息文件 ……obj\Debug\model.pdb: 拒绝访问
错误:创建调试信息文件“.......\obj\Debug\model.pdb”时发生错误 --“......\obj\Debug\model.pdb: 拒绝访问. 解决办法如下: 删除该项目下的 b ...
- MATLAB mex文件
MATLAB的mex文件是一种特征的函数封装形式,这类函数一般由C/C++语言编写的,经过MATLAB编译器处理而生成的二进制文件.它是可以被MATLAB解释器自动装载并执行的动态链接程序,类似于wi ...
- 如何设置、查看以及调试core文件
http://blog.csdn.net/xiaoxiaoniaoer1/article/details/7740820 1.core文件的生成开关和大小限制--------------------- ...
随机推荐
- git 导入代码到已有仓库
git remote add origin https://----------- git push -u origin master //这两行将该目录下的文件推送到远端(origin)上的 &qu ...
- hdoj 2620 Bone Collector(0-1背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2602 思路分析:该问题为经典的0-1背包问题:假设状态dp[i][v]表示前i件物品恰放入一个容量为v ...
- kvm 存储
1,virt-install --connect qemu:///system --name web01_lvm --ram 1024 --vcpus=1 --disk=/dev/vg_lvm/web ...
- ubuntu12.04下 安装虚拟主机
Ubuntu Linux 方法一 一.修改/etc/apache2/sites-available/ 1. 打开目录 /etc/apache2/sites-available/, 发现 default ...
- SMACSS:一个关于CSS的最佳实践-3.Layout Rules
本篇笔者要介绍的是Layout Rules.看完本篇,大家将会知道Layout Rules的作用,以及哪些CSS应该归类为Layout Rules. 什么是Layout Rules? Layout R ...
- 解压版本 Tomcat配置--转
http://qsfwy.iteye.com/blog/429973 一 配置JDK 1.下载jdk下载后,解压,假设为D:\Program Files\Java\jdk1.5.0_08,要确保bin ...
- [LeetCode]题解(python):085-Maximal Rectangle
题目来源: https://leetcode.com/problems/maximal-rectangle/ 题意分析: 给定一个二维的二进制矩阵,也就是只包括0 和 1的,找出只包括1的最大的矩阵的 ...
- iphone抓取移动网络报文的方法
iphone抓取移动网络报文的方法 对iPhone进行越狱,网上有很多教程,这里不做说明.越狱后会有cydia这个app,首先对用户身份进行设置,选用开发者身份.打开这个应用,搜索openssh,找到 ...
- MVC-03 控制器(2)
五.ActionResult解说 ActionResult的继承图: 类型 Controller辅助方法 用途帮助 ContentResult Content 回传一个用户自定义的文字属性 Empty ...
- 帝国cms7.0导航栏当前栏目显示不同样式
以下代码演示帝国导航调用 栏目id为14.15.2.34的栏目内容.同时加入php语句,如果栏目显示为当前栏目,则变量<?=$on?> 显示为 an ,否则就显示为空 [e:loop={& ...