基于QT CMAKE的应用程序错误的依赖关系。

问题描述 投票:0回答:1

我目前正在接到一个任务,让这个 计划 工作在Windows 10。我设法让它编译和构建通过,我开始运行它,但它没有启动,输出是相当简单的,像下面。

15:49:31: Starting J:\Projects\huang\build-App-EGIAmpServer-master-new_kit-Debug\EGIAmpServer.exe ...
15:49:32: The program has unexpectedly finished.
15:49:32: The process was ended forcefully.
15:49:32: J:\Projects\huang\build-App-EGIAmpServer-master-new_kit-Debug\EGIAmpServer.exe crashed.

调试器的日志对我帮助不大,如下图所示

>21^done
dNOTE: ENGINE SETUP OK
dState changed from EngineSetupRequested(1) to EngineSetupOk(3)
dState changed from EngineSetupOk(3) to EngineRunRequested(4)
dCALL: RUN ENGINE
<22-exec-run


>=thread-group-started,id="i1",pid="10748"
 Thread group i1 created.
dTaking notice of pid 10748
>=thread-created,id="1",group-id="i1"
 Thread 1 created.
>~"[New Thread 10748.0x2534]\n"
 [New Thread 10748.0x2534]

>=thread-exited,id="1",group-id="i1"
 Thread 1 in group i1 exited.
>=thread-group-exited,id="i1"
 Thread group i1 exited.
dNOTE: INFERIOR EXITED
dState changed from EngineRunRequested(4) to InferiorShutdownFinished(14)
dState changed from InferiorShutdownFinished(14) to EngineShutdownRequested(15)
dCALL: SHUTDOWN ENGINE
dPLAIN ADAPTER SHUTDOWN 15
dINITIATE GDBENGINE SHUTDOWN, PROC STATE: 2
<23python theDumper.exitGdb({"token":23})
>22^error,msg="During startup program exited with code 0xc0000135."
eERROR: UNEXPECTED STATE: EngineShutdownRequested  WANTED: EngineRunRequested IN C:\Users\qt\work\build\qt-creator\src\plugins\debugger\gdb\gdbengine.cpp:4480
dDuring startup program exited with code 0xc0000135.
dNOTE: ENGINE RUN FAILED
 Run failed.
dState changed from EngineShutdownRequested(15) to EngineRunFailed(5)
dState changed from EngineRunFailed(5) to EngineShutdownRequested(15)
dCALL: SHUTDOWN ENGINE
dPLAIN ADAPTER SHUTDOWN 15
dINITIATE GDBENGINE SHUTDOWN, PROC STATE: 2
<24python theDumper.exitGdb({"token":24})

dQUIT DEBUGGER REQUESTED IN STATE 15
>&"python theDumper.exitGdb({\"token\":23})\n"
dGDB PROCESS FINISHED, status 0, exit code 0
dNOTE: ENGINE SHUTDOWN FINISHED
dState changed from EngineShutdownRequested(15) to EngineShutdownFinished(16)
 Debugger finished.
dState changed from EngineShutdownFinished(16) to DebuggerFinished(17)

所以我用 dependency walker 以查看是否有任何dll丢失。现在事情越来越清楚了,看来是QT5CORE.DLL、QT5GUI.DLL和QY5WIDGETS.DLL有问题。

enter image description here

现在的问题是为什么,我的环境有什么问题?我使用的是QT Creator 4.11.1,MinGW 7.3.0 64位(自带QT),CMake 3.17 Win10 64操作系统。我的QT Creator工具包如下。

enter image description here

c++ qt cmake mingw qt-creator
1个回答
0
投票

当运行你的程序时,你需要在程序的目录下或在 PATH. 从你的屏幕截图, 我假设你有32位QtCreator的目录在 PATH 而不是。

© www.soinside.com 2019 - 2024. All rights reserved.