Qt Creator已退出,代码为-1073741819

Qt Creator已退出,代码为-1073741819,qt,dll,path,qt-creator,Qt,Dll,Path,Qt Creator,尝试在Qt 5.1.1中运行我的应用程序的调试版本时,我得到: Starting C:\Users\Jared\Documents\Telkonet\serial_loader\branches\2.x\build-esu-Desktop_Qt_5_1_1_MinGW_32bit-Debug\debug\esu.exe... The program has unexpectedly finished. C:\Users\Jared\Documents\Telkonet\serial_loader

尝试在Qt 5.1.1中运行我的应用程序的调试版本时,我得到:

Starting C:\Users\Jared\Documents\Telkonet\serial_loader\branches\2.x\build-esu-Desktop_Qt_5_1_1_MinGW_32bit-Debug\debug\esu.exe...
The program has unexpectedly finished.
C:\Users\Jared\Documents\Telkonet\serial_loader\branches\2.x\build-esu-Desktop_Qt_5_1_1_MinGW_32bit-Debug\debug\esu.exe exited with code -1073741819
exe文件的ldd显示:

$ ldd build-esu-Desktop_Qt_5_1_1_MinGW_32bit-Debug/debug/esu.exe
        ntdll.dll => /cygdrive/c/windows/SYSTEM32/ntdll.dll (0x7fed5810000)
        ntdll.dll => /cygdrive/c/windows/SYSTEM32/ntdll.dll (0x77b00000)
        wow64.dll => /cygdrive/c/windows/SYSTEM32/wow64.dll (0x77a40000)
        wow64win.dll => /cygdrive/c/windows/system32/wow64win.dll (0x77aa0000)
        wow64cpu.dll => /cygdrive/c/windows/system32/wow64cpu.dll (0x77a90000)
        ??? => ??? (0x2b0000)
        KERNEL32.DLL => /cygdrive/c/windows/SYSTEM32/KERNEL32.DLL (0x76b80000)
        ??? => ??? (0x2b0000)
        ??? => ??? (0x2b0000)
        KERNEL32.DLL => /cygdrive/c/windows/SYSTEM32/KERNEL32.DLL (0x76b80000)
        KERNELBASE.dll => /cygdrive/c/windows/SYSTEM32/KERNELBASE.dll (0x76ad0000)
我的路径变量包括:

C:\Qt\Qt5.1.1\5.1.1\mingw48_32\lib\;
C:\Qt\Qt5.1.1\Tools\QtCreator\bin\;
C:\Qt\Qt5.1.1\5.1.1\mingw48_32\bin\;
C:\Qt\Qt5.1.1\Tools\mingw48_32\bin\;
还值得注意的是,在卸载Qt4.8.4之后,我刚刚安装了Qt5.1.1

更新:

我检查了所有的源代码,并用Q_OS_WIN替换了Q_WS_WIN的所有实例。现在我明白了:

Starting C:\Users\Jared\Documents\Telkonet\serial_loader\branches\2.x\debug\debug\esu.exe...
The program has unexpectedly finished.
C:\Users\Jared\Documents\Telkonet\serial_loader\branches\2.x\debug\debug\esu.exe exited with code -1073741515

在将所需的DLL放入调试文件夹后,我再次得到错误代码1073741819。Main()仍然没有被访问。

在仔细研究之后,我发现这是我使用的boost库版本的一个问题。我下载并安装了最新的boost库版本。它现在正在工作。

令人困惑的标题:不是QtCreator,而是esu.exe退出:);在第一行设置断点时,是否达到了esu的main()函数?;你是在混合使用cygwin和非cygwin的Qt还是什么?我放在main()第一行的qDebug()没有显示在应用程序输出中。似乎无法访问main()方法。至于cygwin,我只是用它来做ldd。