gdb 报告分段错误 - 如何知道在哪里?
gdb reports Segmentation fault - how to know where?
我是 运行 我在 gdb 下的程序,有调试信息,没有任何优化。 gdb 报告:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffeffff700 (LWP 8875)]
0x0000001000000001 in ?? ()
从这条消息中我不明白问题发生在哪里。是否可以提取堆栈跟踪/问题文件和行号?
要获取发生代码分段错误的点,您应该使用回溯 (bt) 命令。
gdb 中提供了范围广泛的命令,应该探索这些命令以帮助您尽可能高效地调试代码。
例如您可以记录您的代码流并反向重放。
探索数据类型
有断点等
我是 运行 我在 gdb 下的程序,有调试信息,没有任何优化。 gdb 报告:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffeffff700 (LWP 8875)]
0x0000001000000001 in ?? ()
从这条消息中我不明白问题发生在哪里。是否可以提取堆栈跟踪/问题文件和行号?
要获取发生代码分段错误的点,您应该使用回溯 (bt) 命令。
gdb 中提供了范围广泛的命令,应该探索这些命令以帮助您尽可能高效地调试代码。
例如您可以记录您的代码流并反向重放。 探索数据类型 有断点等