Qt和MATLAB混合编程
关于Qt和MATLAB混合编程的文章,百度上很少(google不了。。。),最近自己摸索整理了一份资料,在这里分享出来共同学习。因为文章太长,在这里就不贴出来了,有问题可以回帖讨论。。。网盘地址:
http://pan.baidu.com/s/1dDvpu9r
虽然暂时用不到,但赞一个:P 顶一下 谢谢。。。。。。。。。。。 刚好有用 谢谢········································· 不错不错,赞一个,给有需要的人。 最近正好要用qt和MATLAB,谢谢楼主!!!!! 我在win8.1 QT5.3.2 MATLAB2012B环境下,运行楼主的程序没有问题,但我重新写了一个需要传递参数的一个函数后,显示调用该动态库,初始化该动态库什么都没问题,但是由于需要传参,所以需要通过mxCreateDoubleMatrix构造输入mxArray和输出mxArray,但是在编译的时候,会报以下错误,E:\Software_Practice\QtProject\Test3MatlabWithQT\mainwindow.cpp:45: error: undefined reference to `mxCreateDoubleMatrix_730_proxy(unsigned int, unsigned int, mxComplexity)'不知楼主有没有遇到这种问题,已经折腾了一天了:( 本帖最后由 一叶知秋 于 2016-6-23 20:29 编辑
吴雨辰 发表于 2016-6-22 20:07 static/image/common/back.gif
我在win8.1 QT5.3.2 MATLAB2012B环境下,运行楼主的程序没有问题,但我重新写了一个需要传递参数的一个函数 ...
你这个思路可能不太对,matlab的函数应该在.m文件中写,然后导出库文件,在Qt完成传参和接收返回值,如果你想直接在Qt中使用matlab的函数,这可能就需要使用matlab引擎的方式,我文章里有提到 一叶知秋 发表于 2016-6-23 20:28 static/image/common/back.gif
你这个思路可能不太对,matlab的函数应该在.m文件中写,然后导出库文件,在Qt完成传参和接收返回值,如果 ...
对对,我是这么干的,就是在matlab的.m文件里写了一个y=a+b的一个加法函数,把它编成了动态库,所以就需要两个输入参数,和一个返回参数么,然后就在Qt里构造mxArray数组来传递和接收参数啊,但是在调用mxCreateDoubleMatrix()函数构造mxArray时,就提示我undefined reference to "mxCreateDoubleMatrix_730_proxy"的错误,看上去好像是库链接的问题,但是我感觉该用到的库我都添加了啊... :(不知道啥问题... 吴雨辰 发表于 2016-6-24 09:18 static/image/common/back.gif
对对,我是这么干的,就是在matlab的.m文件里写了一个y=a+b的一个加法函数,把它编成了动态库,所以就需 ...
请问解决了吗,我也遇到同样问题。 我也遇到了和楼上一样的问题,Qt调用MATLAB,传递参数的时候就会报错,有解决掉这个问题的大神吗?求指导:'( shy 发表于 2016-10-19 11:07 static/image/common/back.gif
我也遇到了和楼上一样的问题,Qt调用MATLAB,传递参数的时候就会报错,有解决掉这个问题的大神吗?求指导:' ...
我 也遇到同样的问题。我是Qt4.8.5,matlab2012b。win764位
另我在调用楼主的lib和dll时,没有任何报错,但程序总是运行不起来,自动退出。不知什么原因。 你得也是需要传参的吗 环境:matlab2012b,编译器lcc-win32
这个问题是因为lcc编译出来的是C语言库,在使用时找不到那些函数,是因为我们在Qt中编译的是g++,编译c++的,那些头文件中的函数会找不到,因为命名方式有差异,我现在是把mclmcrrt.h文件中64行改为#define EXTERN_C extern "C",可以编译通过,运行时有效果,但是后台会报一些异常,就是说matlab编译的dll文件是否可以在c++中用 我最近也要在qt中调用matlab程序,不知道这种方式可不可行,还是要把matlab程序用C++重写,是关于图像处理的,各位有这方面的经验吗 xhong 发表于 2016-10-26 08:32 static/image/common/back.gif
我 也遇到同样的问题。我是Qt4.8.5,matlab2012b。win764位
另我在调用楼主的lib和dll时,没有任何报错, ...
我的问题解决了,还是环境的问题,环境配置对了,就可以了 楼上分享下环境该怎么配嘛 我用的是vs-qt组件,借助vs2013,系统是64位的
支持楼主!
页:
[1]
2