您的位置:首页 > 编程语言 > MATLAB

matlab+opencv+VS动态编译出错:

2017-09-16 22:04 861 查看
matlab动态编译出错

“Test checkout of feature ‘Compiler’ failed.”

出错原因:

matlab没有完全解密

解决办法:

把“..\Matlab64\bin\win64”目录下的compiler.dll,mcc.exe,libmwservices.dll 三个文件复制到matlab安装目录对应位置替换原文件即可!(如果软件是32位,则对应目录为“..\Matlab32\bin\win32”)



matlab64位使用,X64平台编译

如果出现程序无法正常启动的错误是:opencv库对应的X64文件夹下的库目录没有加入环境变量

最初保存为 TreeBagger 的变量 ‘DT’ 无法实例化为对象,将以 uint32 形式读取。



着重检查程序中带点的情况,看是确实引用了结构体

然后就是引用了类treeBagger,得在函数体内部申明如下红框所示



opencv3.0+VS2013出错

无法解析的外部符号
"public: static class std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >


解决办法:(修改红框对应项)



C++使用matlab动态链接库

Matlab环境变量配置:

Matlab:

D:\programFile\matlab2014

path:

%Matlab%\bin

%Matlab%\runtime\win64

%Matlab%\bin

%Matlab%\bin\win64

%Matlab%\polyspace\bin

matlab动态链接库编译(c++)

为了避免出错一定要捆绑编译

mex -setup
mbuild -setup
mcc -N -W cpplib:rfclassify -T link:lib rfclassify.m -v
mbuild rfclassify.cpp rfclassify.lib -v


编译成功效果图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: