我正在尝试使用gdb调试一个程序的插件。我之前看到一个问题表明gdb中的directory命令可能会有所帮助。我认为这会有所帮助,因为当我尝试在插件的代码中设置断点时,我得到的错误是:“没有命名的源文件......”当我使用目录时它似乎没有做任何事情命令与源路径结构。有任何想法吗?感谢。
答案 0 :(得分:3)
“没有名为...的源文件”
在您的插件实际加载到下级(正在调试)的过程中之前,GDB将无法设置断点。
使用(gdb) info shared
命令检查您的插件是否已加载。
如果不是,您可以设置“延迟”断点(GDB应该询问您是否要设置这样的断点,假设您具有默认的set confirm on
设置)。
如果您的插件已加载并在info shared
输出中可见,那么您还没有使用调试信息构建插件。使用-g
重建它,您应该可以在其中设置断点。