Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 其它 > 资料存档
资料存档 资料存档
回复
 
主题工具 显示模式
旧 2019-12-14, 20:13   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 将Matlab共享库链接到Qt(Windows)

我想在Windows下的QT(http://www.mathworks.com/help/techdo...�用Matlab的C API来打开.mat文件。在我的.pro文件中,我包含了INCLUDEPATH += "C:\Program Files\MATLAB\R2010b\extern\include" ,它可以正常工作(代码可以编译)。但是,当尝试使用LIBS += -L"C:\Program Files\MATLAB\R2010b\extern\lib\win32\microsoft" -llibmat链接libmat.lib文件(我已阅读.dll文件无法直接链接)时应用程序在执行时崩溃。给出的错误说[file].exe exited with code -1073741515

我既不是QT也不是Windows专家,但是对于这个项目,我被迫同时使用两者(我想在GNU / Linux中更容易解决此问题),因此将不胜感激。使用Windows XP,带有Qt Creator 2.0.1的QT版本4.7.0和Matlab R2010b。

万一有用,编译器的最后输出:

g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -Wl,-subsystem,windows -o debug/MainUI.exe debug/main.o debug/maingui.o debug/matparser.o debug/matutils.o debug/moc_maingui.o -L'c:/Qt/2010.05/qt/lib' -lmingw32 -lqtmaind "-LC:\Program Files\MATLAB\R2010b\extern\lib\win32\microsoft" -llibmat -lQtGuid4 -lQtCored4



回答:

我刚刚测试过构建一个简单的C程序,该程序使用MAT文件接口库没有问题。该示例文件位于: matlabroot/examples/eng_mat/matcreat.c 。我正在Windows XP 32位计算机上使用MinGW进行编译。这是我使用的Makefile:

# root directory of MATLAB installation MATLABROOT="/c/Program Files/MATLAB/R2010b" .PHONY : all clean run all: matcreat matcreat: gcc ${MATLABROOT}/extern/examples/eng_mat/matcreat.c -o matcreat \ -I${MATLABROOT}/extern/include \ -L${MATLABROOT}/extern/lib/win32/microsoft -llibmat -llibmx clean: rm -rf matcreat *.exe *.mat run: # UNIX uses LD_LIBRARY_PATH to find libs at runtime, Windows/MinGW uses PATH @PATH=${MATLABROOT}/bin/win32:"${PATH}" ./matcreat

更多&回答...
poster 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛禁用 表情符号
论坛启用 [IMG] 代码
论坛启用 HTML 代码



所有时间均为北京时间。现在的时间是 03:21


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.