Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
我想在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 更多&回答... |
![]() |
![]() |