QT Windows桌面GUI程序在发布模式下崩溃,但在调试模式下不会崩溃

时间:2015-03-11 13:51:03

标签: windows qt user-interface release

我遇到这个奇怪的问题,在Windows上运行我的GUI应用程序的发布版本在启动时崩溃并打印出以下(删节)输出:

Starting C:........\build-WindowsUI-Desktop_Qt_5_4_0_MSVC2010_OpenGL_32bit-Release\release\WindowsUI.exe...
The program has unexpectedly finished.
C:.............\build-WindowsUI-Desktop_Qt_5_4_0_MSVC2010_OpenGL_32bit-Release\release\WindowsUI.exe crashed

没有提供其他信息。编译器输出似乎正常,并且不会打印崩溃详细信息。当我运行调试版本时:一切都很好。 GUI运行正常,没有遇到任何问题。

之前有没有其他人遇到这样的事情?我被困在这里。

1 个答案:

答案 0 :(得分:0)

谢谢Mailerdaimon!

我看了看我的QT项目文件。在我的.pro文件中,我告诉链接器使用特定的dll进行发布和调试模式。根据您的想法,我尝试根据输出的可执行文件类型注释掉指定dll的部分:

#win32|win64:debug {
# need to link DLL versions of library for Debug
#LIBS += -L"../ThirdParty/thirdPartyDlls" \
#
#         -lthirdPartyD
#
#}

#win32|win64:release {
# need to link DLL versions of  library for release
LIBS += -L"../ThirdParty/thirdPartyDlls" \

         -lthirdParty

#}

现在发布模式有效!我想我在.pro文件中使用了错误的语法,或者它可能是Qt Creator中的一个错误。无论哪种方式,我现在工作:)。再次感谢!