QT写的程序如何在崩溃的时候,记录内存信息?

fanweimianA 2014-06-25 09:18:55
QT写的应用程序(Windows平台)有时在运行的过程中,会自动退出,可能是捕获到了segmentation fault错误,请问如何在应用程序退出的时候,记录其内存信息,类似于Windows下面的Dump文件,或者Linux下面的core文件,谢谢!!!
...全文
1431 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiuxianshen 2014-06-27
  • 打赏
  • 举报
回复
Windows下Vs+qt可以利用vs的pdb加dump信息来解析崩溃的堆栈信息,Linux下就用backtrace更简单, 不过Windows下如何利用QtCreator+mingw来处理crash,也一直在困惑,同求大牛
大卫无限 2014-06-26
  • 打赏
  • 举报
回复
google 的breakpad
qwer_boo 2014-06-26
  • 打赏
  • 举报
回复
大牛就是大牛~
foruok 2014-06-26
  • 打赏
  • 举报
回复
这个问题和 Qt 木有一毛钱关系,windows下就用 windows 的函数, linux 下就用 linux 的函数。 Linux下的相关函数:
       #include <execinfo.h>
       int backtrace(void **buffer, int size);
       char **backtrace_symbols(void *const *buffer, int size);
       void backtrace_symbols_fd(void *const *buffer, int size, int fd);
windows下面,参考这个文章:http://bbs.csdn.net/topics/10469709
Li_灿 2014-06-26
  • 打赏
  • 举报
回复
看生成到输出目录的.pdb文件, 在.pro文件中加上QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO QMAKE_LFLAGS_RELEASE = $$QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO, 这样Realease也会生成.pdb文件。
Inhibitory 2014-06-25
  • 打赏
  • 举报
回复
很感兴趣这个问题,也不会

16,810

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧