相关疑难解决方法(0)

我的程序崩溃时如何自动生成堆栈跟踪

我正在使用GCC编译器在Linux上工作.当我的C++程序崩溃时,我希望它能自动生成一个堆栈跟踪.

我的程序由许多不同的用户运行,它也可以在Linux,Windows和Macintosh上运行(所有版本都使用编译gcc).

我希望我的程序能够在崩溃时生成堆栈跟踪,并且在用户下次运行它时,它会询问他们是否可以将堆栈跟踪发送给我,以便我可以追踪问题.我可以处理向我发送信息,但我不知道如何生成跟踪字符串.有任何想法吗?

c++ crash gcc assert stack-trace

561
推荐指数
20
解决办法
33万
查看次数

如何从googletest中的异常中获取回溯信息?

我正在尝试做一些半测试驱动的设计,偶尔当我实现一个新功能时,它会在某处出现异常。所有 gtest 告诉我的是异常是什么,并且没有给我任何回溯信息。

如果我运行 gdb --args --gtest_catch_exceptions=0,它将在测试中停止并出现异常但没有任何回溯信息。它简单地说:

[ RUN      ] TESTNAME.test_case
EXCEPTION: exception description[Inferior 1 (process 30528) exited with code 0377]
(gdb) bt
No stack.
Run Code Online (Sandbox Code Playgroud)

c++ debugging gdb exception googletest

4
推荐指数
1
解决办法
3915
查看次数

标签 统计

c++ ×2

assert ×1

crash ×1

debugging ×1

exception ×1

gcc ×1

gdb ×1

googletest ×1

stack-trace ×1