Jav*_*ock 10 c++ matlab visual-studio-2010 matlab-engine
我试图从MATLAB Doc 运行示例代码,但是当我尝试在Visual Studio中构建项目时,我得到了这个错误
fatal error C1083: Cannot open include file: 'engine.h': No such file or directory
Run Code Online (Sandbox Code Playgroud)
事实是,在Doc中我无法找到链接它的标题的位置,它们显示示例就好像没有必要做任何其他事情,只是做了
#include "engine.h";
Run Code Online (Sandbox Code Playgroud)
关于如何解决这个问题的任何想法?
编辑
我解决了第一个问题,但现在我得到了一些错误依赖于缺少的libs:
1>engwindemo.obj : error LNK2019: unresolved external symbol _engClose referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _mxGetClassName referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _engGetVariable referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _engOutputBuffer referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _mxDestroyArray referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _engEvalString referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _engPutVariable referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _mxGetPr referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _mxCreateDoubleMatrix_730 referenced in function _main
1>engwindemo.obj : error LNK2019: unresolved external symbol _engOpen referenced in function _main
Run Code Online (Sandbox Code Playgroud)
我按照文档中的说明设置了Path变量,设置了lib路径并添加了一些库,现在我不知道还能做什么.我还重新启动了VisualStudio,以使Path变量更改生效.
提前致谢.
Jav*_*ock 12
我最终解决了这个问题.我正在构建一个WIN32项目,而matlab是x64,因此当您尝试链接64位平台时,VisualStudio会出错.解决方案是在项目属性 - >配置管理器中将Active Solution Platform更改为x64.
在以下链接中对此进行了详细说明.
无论如何,谢谢你的答案,他们很有用.
因此,总结一下,为了能够使用engine.h在VisualStudio2008和Matlab2010中编译和运行c ++代码,需要执行以下步骤:
1.-在高级系统设置 - >环境变量中设置路径变量:C:\ Program Files\MATLAB\R2010a\bin\win64(或libeng.dll所在的路径)
2.-在VisualStudio的项目属性中,在C++的附加包含目录中链接 - >常规: "C:\ Program Files\MATLAB\R2010a\extern\include"
3.-在项目属性中,链接器 - >常规,附加库目录: "C:\ Program Files\MATLAB\R2010a\extern\lib\win64\microsoft"
4.-在Linker-> Additional Dependencies中添加以下库: libeng.lib libmx.lib
5.-按照链接中的说明,在Configuration Manager中将Active Solution Platform更改为x64.
| 归档时间: |
|
| 查看次数: |
12798 次 |
| 最近记录: |