请问大侠,如何用gdb调试phab的程序

我使用gdb调试phab生成的可执行文件,使用list命令显示要调试的文件,可是它只能list出abmain.cc中的几行代码,而真正实现功能的源文件却看不到,请问应该如何list出其他源文件中的代码呢?

你是说你的callback函数找不到? gdb的使用网上到处都有,
“l func_name” 用来显示指定的函数。

我看到了gdb的帮助,知道有l func_name的用法,可是当我输入
l func_name时,提示No line number known for btnchaname
唐先生,这是为什么呢?难道phab生成的可执行文件没有包括所有的源码?

那就是你生成的执行文件,不含 Debug 信息。

在我的 phAb 的 Application → Build + Run 里面,有一个
Version选项,选 Debug 后再 make 的话,就会生成带
Debug 信息的执行文件。

我已经生成了debug信息了,要不list也不会显示主程序的原代码了
但是只能显示abmain.cc中的源码,其他文件中的就看不到。

这个问题我也遇到过,如果你要查看的函数在filename.cpp中,那将其编译后会生成相应的filename.o文件。
要想查看其中的内容,只要在启动gdb之后,运行sym filename.o就可以了。