c++ - Qt 调试器与 OpenCV 卡住

标签 c++ qt opencv debugging freeze

enter image description here

如果我不包括 cv::Mat test; 那么调试器工作正常。由于某种原因,包含那 1 行会终止 Qt 调试器。

症状:

  • 变量 View 永远加载
  • 编码程序卡住 - 您无法停止、启动或执行任何操作
  • 编辑器功能正常
  • 在您停止 Debug模式之前,断点变得不可移除
  • 40 秒后,您可以选择停止调试器,推断它可能处于无限循环中 - 这(或关闭 Qt)是停止调试器的唯一方法
  • 在运行时运行代码按预期工作
  • 在没有断点的情况下运行代码按预期工作

我没有做任何花哨的事情(据我所知),所以设置应该是安装时的默认设置。

版本信息:

  • Qt Creator 4.2.1
  • 基于 Qt 5.8.0(MSVC 2015,32 位)
  • 来自修订版 7071b61e02

我不能再用这个了!它使调试过程减慢到只能找到错误所在的爬行速度。这个问题似乎是新问题,几天前才刚刚开始。这是怎么回事?如何在不重新安装 Qt 的情况下使调试器恢复正常?提前致谢!

最佳答案

不仅仅是 OpenCV。我在 Windows 上遇到了同样的问题。 Windows 调试器 (WinDbg) 非常糟糕。很多时候,它会像您描述的那样卡住,并且会永远等待那个烦人的旋转器。甚至不可能查看 boost::filesystem::path 的值。有时它甚至不显示那里的变量(有时像 this),当我在 Qt Creator 中展开它时,它们显示为空。

因此,我决定不再在 Windows 上进行硬核调试。我所做的是在 Windows 上进行非常浅的调试,在 Linux 上使用 gcc 和 gdb 进行核心调试。我有一个虚拟机 (VM Ware) 用于此目的。

关于c++ - Qt 调试器与 OpenCV 卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45446110/

相关文章:

c++ - Boost Container vector 可以通过非原始指针管理内存吗?

c++ - 使用 boost spirit 将字符串转换为 int

c++ - 如何在写入文本文件时在行中添加中断

c++ - OpenCV - 去除凸性缺陷(Python 到 C++)

javascript - matchTemplate 后的 opencv 黑色图像

c++ - 如何使用 "const unordered_map"?

c++ - 具有替换自由方法的结构的 scoped_ptr

c - GTK 中的信号和槽

c++ - 在 QT 中更改 UI 的奇怪行为

python - 如何使用分段仿射变换拉直弯曲的文本线/轮廓?