VC中单步调试matlab mex程序

本文详细介绍如何在VC中配置并调试MEX程序,包括创建DLL工程、设置环境变量、指定输出函数及调试步骤等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

vc中编译,单步调试mex程序:
 最好先具备如下基础:
     1.调试过dll程序;
     2. VC中编译过mex程序;
    3 . 任意一种开发工具中调试程序的能力;
    
     在VC中编译mex程序的配置步骤(如果已熟悉,跳过这段):
     1. mex -setup, mbuild -setup 选择vc编译器(这未必需要,matlab中编译肯定会有此步的);
     2. 创建DLL工程,在Project页面可以选择 MFC AppWizard(DLL);
     3. 选择静态链接MFC的DLL;
     4. 设定输出函数,在.def文件指定DLL的输出函数,mex程序为 mexFunction。类如如下:
        ; createFontBitmap.def : Declares the module parameters for the DLL.

LIBRARY      "createFontBitmap"
DESCRIPTION  'createFontBitmap Windows Dynamic Link Library'

EXPORTS
    ; Explicit exports can go here
mexFunction

     5. 环境设置
      可以在头文件中include,也可以在vc环境中,我习惯于在vc环境中设置:
      A.Tools--->Options--->Directories---->Show Directories for---->Include 然后选择 $MATLABROOT\EXTERN\INCLUDE;
      B. Tools--->Options--->Directories---->Show Directories for---->Library ,
 $MATLABROOT\LIB\WIN32\MICROSOFT\MSVC60或者是$MATLABROOT\LIB\WIN32\MICROSOFT\MSVC70,以及$MATLABROOT\EXTERN\LIB
      C. Project-->Setting, 在Link页面的Object/library modules填入 libmx.lib libmex.lib 等库,具体需要哪些库根据你的程序而定,目前这个就是上面这几个库。
    
     6. 写代码,不要我说;
   
     7. 调试:
     A. 在debug模型下进行;
     B. Project--->Setting--->Executable for debug session 填入 $MATLABROOT\bin\win32\MATLAB.exe ( 其实自己运行工程(点那个go按钮(F5))也会弹出对话框让你选择,然后浏览到matlab.exe即可;
     C. 加断点;
     D. Go(F5),会提示说matlab不可调试,你不用管它;
     E. 在新启动的MATLAB进程命令窗中中调用mex函数
     余下的与任何开发平台的任何调试步骤类似


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值