使用GCC和GDB的Ubuntu上的QT Creator – debuggingC ++ – 更详细的分段错误消息

我在Linux上工作比较新,所以我可能会忽略一些简单的东西。

在Windows上,如果我的程序导致分段错误,我已经习惯了一些有用的信息popup。 有什么影响: Access violation reading/writing/executing memory at address 0x****Stack overflow

在通过QT Creator进行Linuxdebugging时,我所得到的是:

 The inferior stopped because it received a signal from the Operating System. Signal name : SIGSEGV Signal meaning : Segmentation fault 

有没有办法让这些消息给出相同的信息,在他们的Windows相对应,或至less是故障的types(内存违规,堆栈溢出等)? 我当然可以使用GDB来debugging程序,但是这个popup窗口通常会让我很快了解问题所在,而不是在崩溃站点周围进行挖掘。

是的,gdb不会试图解释崩溃的原因。 我想也许它可以在这里做更多。

有关确切导致崩溃的更多信息,可以查看$ _siginfo。 在gdb手册中有一个部分。 不幸的是,这是相当模糊的。

当你从Qt Creator得到这个消息时,它也会用数据填充堆栈视图。 在顶部条目中,您通常会看到导致访问不良的指令的地址。