C/C++下调用matlab函数

C/C++下调用matlab函数操作说明
1. matlab的安装
连接:http://pan.baidu.com/s/1qXuF7aO

一定要安装32位版本的matlab(在目录下bin文件夹中有两个文件夹,选择win32文件夹下的setup进行安装)



2. matlab mex编译器配置

安装完matlab之后,需要设定对应的c++编译器才能编译.m文件生成可供c++调用的库文件。打开matlab,在命令行输入:mex -setup,选择已安装的vc编译器


我的matlab版本是R2010b,选择的是[2] Microsoft Visual C++ 2008 Express,然后一直选择y直到看到Done




然后继续在命令行中输入:mbuild -setup  ,按照上述类似的方式设置编译器


假设存在一个Add.m的文件需要编译成库文件,
Add.m文件
function C=Add(A,B)
     C=A+B;
end
使用命令编译:mcc -W cpplib:libAdd  -T link:lib Add.m
成功编译会在Add.m的路径下生成一些文件:


如果出现错误,可能是编译器配置错误,依次输入一下两行命令查看配置文件:
>> cd(prefdir)
>> edit compopts.bat
set VSINSTALLDIR=  这里如果是空值,需要将电脑中安装的VC路径写到这里






3. 创建c++程序调用matlab函数
   将前面生成的libAdd.dll"、"libAdd.h"和"libAdd.lib"三个文件拷贝到新建的vc工程中,并配置工程属性,添加matlab安装目录下extern中include文件夹,我的是D:\matlab\extern\include
   
   然后配置库目录:
   
   添加D:\matlab\extern\lib\win32\microsoft这里需要注意的是,该路径下有" mclmcrrt.lib"文件,是我们需要的。
    
   最后配置link连接器,添加:
   libeng.lib
   libmat.lib
   libmex.lib
   libmx.lib
   mclmcrrt.lib
   mclmcr.lib
   libAdd.lib(最后这一个是Add.m生成的)
   
   
   
   下面的c++程序实现调用
   
   结果:
   
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值