![[Linux]GDB编程](http://pic.xiahunao.cn/yaotu/[Linux]GDB编程)
如何使用gdb把断点打在这个外部库的A函数的19行要在 GDB 中给外部库 A 函数的第 19 行设断点需先确认库的调试符号和源文件路径具体步骤如下前提条件确保外部库已编译调试符号通过file/readelf验证且本地能访问该库对应的A函数所在源文件。具体命令分场景场景 1已知源文件路径直接用b 源文件路径:19例如b /home/src/libxxx/A_func.cpp:19若 GDB 提示 “pending breakpoint”输入y确认延迟生效。场景 2仅知库名和函数关联文件先通过info sharedlibrary确认加载的库版本如libxxx.so.1再执行b libxxx.so.1:A_func.cpp:19部分 GDB 版本支持库名 源文件 行号格式。场景 3先定位函数再精准到行先给 A 函数设断点b A运行程序触发断点后用list命令查看函数代码上下文再在第 19 行补充断点b 19。补全源文件路径若 GDB 找不到文件若提示 “源文件不存在”用directory命令添加源文件目录如directory /path/to/lib_source/再重新设置断点。