大约每天一次,我的 gnome 面板冻结。
如何生成某种调试信息以:
- 找出导致冻结的原因或
- 提交错误或查看其是否存在错误
当 gdb 附加到 gnome-panel 并且发生错误时,我无法从 gdb 中获取堆栈跟踪。
Reading symbols from /lib/libbz2.so.1.0...(no debugging symbols found)...done.
Loaded symbols for /lib/libbz2.so.1.0
0x00007f7cefe10f48 in poll () from /lib/libc.so.6
(gdb) c
Continuing.
^C
^C
“^C”是为了表明一旦bug发生gdb停止响应Ctrl+c并杀死-INT。
对同一问题的此错误报告的评论首先将报告者指向名为Debugging a Program Crash的 wiki 页面,然后指向描述如何获取回溯的页面。也许这些会帮助您获得所需的调试信息。
我用可能对您有所帮助的解决方法回答了有关类似问题的问题。它是这样的:
在您的主目录中创建一个名为delayed-gnome-panel.sh 的脚本并将其标记为可执行文件。
将脚本编辑为如下所示:
然后编辑 /usr/share/applications/gnome-panel.desktop 以便
exec=bash /home/<user>/delayed-gnome-panel.sh
.冻结后连接到面板上。
还要确保安装了必要的调试符号。至少 libglib2.0-0-dbg 和 libgtk2.0-0-dbg。
要从头调试 gnome-panel,您可以尝试:
您需要调试符号才能获得可读的内容(即 gnome-panel-dbg)。