【问题标题】:qt applications not runningqt 应用程序没有运行
【发布时间】:2013-10-22 16:01:35
【问题描述】:

我有一个运行 mingw32 和 Qt 4.8.5 的 32 位 Windows。

我已经用以下命令编译了一个项目:

qmake -project
qmake
make

它在启动后加载一秒钟,然后出现 Windows 崩溃消息。这表明错误模块名称是 QtCore4.dll - 所以这些 dll 文件似乎有问题。

我也尝试将所有dll文件从C:\Qt\4.8.5\bin\复制到我项目的发布文件夹,但仍然是同样的错误。

【问题讨论】:

  • 您看到的错误信息是什么?
  • 无,除了“test.exe 已崩溃”

标签: c++ qt qt4 mingw


【解决方案1】:

下载 Qt Creator,打开其中的项目文件(*.pro 文件),构建项目,然后在调试器中运行它。它会告诉你它到底在哪里崩溃。

【讨论】:

  • 调试器说它在收到来自操作系统的信号后停止 - 信号是“sigsegv”
  • @PDev 调试器还为您提供回溯,您可以在其中找出崩溃源自您自己的程序的位置
【解决方案2】:

您收到 SIGSEGV 信号,这意味着分段错误。调试以获取程序崩溃的确切代码行。通常发生在您没有正确操作指针时,例如超出数组边界或通过无效指针访问数据(例如,先前已删除的指针或指向 nullptr 的指针)。
示例 1
int someArray[50];
someArray[100] = 5; /* segmentation fault, index 100 is beyond array boundary */

示例 2
int *numberPtr = new int(5);
*numberPtr = 3; /* it's OK */
delete numberPtr; /* invalid pointer. you must not access it anymore */
*numberPtr = 3; /* segmentation fault, acceding an invalid pointer */

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-23
    • 2014-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多