我正在尝试在 rhel6 64 位 VM 系统上设置洞察调试器: uname -a Linux lb-cam-bca-devel 2.6.32-358.23.2.el6.x86_64 #1 SMP Sat Sep 14 05:32:37美国东部时间 2013 x86_64 x86_64 x86_64 GNU/Linux
我已经下载了从ftp://sourceware.org/pub/insight/releases获得的源代码——insight-6.8-1a.tar.bz2,并进行了配置、构建和安装。
我可以提高洞察力,但是当我尝试设置断点时,它们并没有受到影响。
这是我尝试过的: 1) 通过鼠标单击程序集视图设置断点,然后从 GUI 中选择运行。可执行文件一直运行到最后。控制台视图上的输出是“程序正常退出”。
2) 通过鼠标单击源代码设置断点并从 GUI 中选择运行。洞察窗口全部消失(崩溃?)。“分段故障”输出到终端。
3) 从 GUI 中删除默认断点,并在控制台窗口的 gdb 命令行中设置断点。键入 r 运行。洞察窗口全部消失(崩溃?)。“分段故障”输出到终端。
如果我只是从终端运行 gdb,我可以设置断点并单步执行源文件。
我正在调试的文件是一个简单的 asm 脚本,取自一本书(Assembly Language Step By Step)。
我用来构建文件的命令是: nasm -f elf64 -g -F dwarf eatsyscall.asm ld -o eatsyscall eatsyscall.o
我用来打开洞察力的命令是:insight eatsyscall
有人知道这里会发生什么吗?或者任何人都可以建议我如何去调试这个问题?我现在有点坚持。
我在网上看到的最接近这种行为的报道是:osdir.com/ml/debugging.insight/2008-09/msg00001.html
但是在我的案例中没有涉及共享库。