如何在具有多个同名文件的项目的一个文件上设置断点?

Wil*_*mKF 56 gdb breakpoints ambiguity

我想在第45行的文件service.cpp上的gdb中设置一个断点,我这样做:

gdb> break service.cpp:45
Run Code Online (Sandbox Code Playgroud)

问题是我的应用程序中有许多service.cpp文件,它没有选择我感兴趣的文件.如何指定正确的service.cpp文件?

Car*_*rum 74

指定完整路径:

gdb> break /Full/path/to/service.cpp:45
Run Code Online (Sandbox Code Playgroud)

  • 如果我设置了一个函数名,比如`service.cpp:main`,由于某种原因它找到了错误的一个,即使是一个完整的路径(它找到位于项目根目录下的service.cpp),不知道为什么会发生这种情况. (3认同)
  • 对不起这是大约5年前,我不记得了:( (2认同)
  • 完整路径是指,A)从 / 开始的完整路径,B)从二进制文件到源文件的路径,C)从当前工作目录到源文件的路径,D)从gdb 命令运行到源文件,E) 还有其他什么吗?我尝试了A和D,但似乎不起作用,它总是说源文件不存在。 (2认同)