小项目的调试,基本是在编译时加-g选项后,使用gdb可以直接调试。
gdb 目标二进制文件名
eg:gdb hello
但是大多数服务端程序是以daemon进程形式运行的,demon进程详解见:点我点我
这种服务直接gdb是不行的,需要加参数-p 加目标程序端口号。开始调试之前运行ps -x,查看目标程序的PID。
gdb -p PID
打断点的方法也有点差异,工程较大的时候,打断点方法:
b 类型::方法名 //断点打到方法名所在行
b 文件名:行号 //断点打到指定文件的指定行