欢迎来到天天文库
浏览记录
ID:25351394
大小:49.68 KB
页数:3页
时间:2018-11-19
《vc10.0(vs2010)与matlab混编工程配置》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、VC10.0(VS2010)与matlab混编工程配置(2011-09-1913:04:51)转载▼标签:matlabvcvc10.0vs2010找不到dll文件找不到lib文件配置混编杂谈分类:matlabVC提供寄存器,matlab提供完备的数学公式,两者的结合是不是注定会擦出完美的火花来呢~不过,网上一通找,也木有找到具体的配置方法,共同点就是‘engine.h’头文件的引用,不过编译之前,许多include和lib添加决定着各种dll文件查找的命运,VC6.0和VS的设置会有不同,这里只介绍VS2010版本的(亲
2、身试验,木有问题的才放心写的哦),为了避免以后的悲剧我还是写下来留念一下吧~matlab版本:r2010b环境:VS2010配置:1.菜单:Project→Properties...选择ConfigurationProperties下的VC++Directories。在IncludeDirectories栏目中添加matlab相关的include文件。例如..MATLABR2010bexterninclude和..MATLABR2010bexternincludewin32在LibraryDirecto
3、ries栏目中添加matlab相关的lib文件。例如:...MATLABR2010bexternlibwin32microsoft。(为了保险,我把这个lib文件也加进去了:...MATLABR2010blibwin32)2.菜单:Project→Properties...选择ConfigurationProperties下的Linker→Input。在AdditionalDependencies栏目中输入项目需要引用matlab的的lib文件库。例如:libeng.liblibmx.liblibme
4、x.lib等(我直接写了三个~其他的什么的我也不清楚)。如果要对所有的配置添加lib库文件,可先将左上角的Configuration中的Active(Debug)设置为Allconfigurations。3.菜单:Project→Properties...选择ConfigurationProperties下的Linker→General。在AdditionalLibraryDirectories栏目中,添加库所在的目录名称。(目录查找可以根据第二步中填写的lib名字进行查找,如查找libeng,不过这里需要用后缀'.dl
5、l')。例如:...MATLABR2010bbinwin32这一步相当的重要,不然的话,各种dll文件找不到,lib文件找不到之类的报错,头都大死了。现在就可以混编程序了~再也不用编译时出现好多undefined和xxx之类的错误哦~测试代码:(网上找来的……不过忘了源头在哪里了,先,对编写者怀有无比的崇敬之情,允许我转载一下吧)#include"engine.h"//包含引擎函数的头文件#includeintmain(intargc,char*argv[]){charbuf[1024];En
6、gine*ep=engOpen(NULL);//启动MatlabengSetVisible(ep,false);//设置窗口不可见engOutputBuffer(ep,buf,1024);mxArray*mxN=mxCreateDoubleScalar(3);engPutVariable(ep,"N",mxN);//将变量放置到Matlab空间中engEvalString(ep,"D=rand(N,N)");//在Matlab环境中执行代码mxArray*mxData=engGetVariable(ep,"D");//获
7、得返回的结果std::cout<8、[商讯9、]网上购物新浪商城[发评论]19373348702011-09-2823:35:57[举报]按你写的进行配置,编译可以通过,但是要执行的话,还会报“计算机中丢失libmx.dll。”的错误。我的是VS2010+MATLAB2011a+Win7博主回复:2011-10-2616:49:50我搜了一下,大部分回答是lib
8、[商讯
9、]网上购物新浪商城[发评论]19373348702011-09-2823:35:57[举报]按你写的进行配置,编译可以通过,但是要执行的话,还会报“计算机中丢失libmx.dll。”的错误。我的是VS2010+MATLAB2011a+Win7博主回复:2011-10-2616:49:50我搜了一下,大部分回答是lib
此文档下载收益归作者所有