Can';t在某些源文件中设置断点

Can';t在某些源文件中设置断点,c,eclipse,debugging,breakpoints,C,Eclipse,Debugging,Breakpoints,我正在VirtualBox中运行的Ubuntu14.04虚拟机上使用EclipseMars。在我修改了一些代码之后,目前我正在尝试调试postgresql的initdb。现在initdb在调试器中正确启动 问题是:当我在某些源文件中设置断点时,会设置该断点,并且编辑器左侧的列中会出现蓝色的小点。但是:gdb进程在控制台上打印以下错误消息:“没有名为$P.的源文件”,其中$P等于我在其中设置断点的源文件的路径。此外,调试器不会在这样的断点处停止程序执行 在我试图找到解决方案的过程中,我看到了很多此

我正在VirtualBox中运行的Ubuntu14.04虚拟机上使用EclipseMars。在我修改了一些代码之后,目前我正在尝试调试postgresql的initdb。现在initdb在调试器中正确启动

问题是:当我在某些源文件中设置断点时,会设置该断点,并且编辑器左侧的列中会出现蓝色的小点。但是:gdb进程在控制台上打印以下错误消息:“没有名为$P.的源文件”,其中$P等于我在其中设置断点的源文件的路径。此外,调试器不会在这样的断点处停止程序执行

在我试图找到解决方案的过程中,我看到了很多此类问题,但使我的情况有所不同的是:我上面描述的问题并没有出现在我的项目文件夹中的所有源文件中。它只有在一些源文件中,在其他文件中,我可以设置工作断点而没有任何问题


非常感谢您的帮助。

他们中有人发布版本,有人调试版本吗?@Thomas:对不起,我不知道您的意思。我在哪里可以查到?但调试所需的所有源文件都属于同一个项目。项目的构建模式设置为“默认”。请确保所有编译/链接步骤都没有优化,并且所有编译/链接步骤都有参数-g(或对于gcc-ggdb)。确保调试器具有读取所有源文件的权限,包括源文件所在的目录。我尝试了-ggdb选项,而不是-g,这是我以前在makefiles中设置的。src文件夹和所有子目录对任何用户都有读写权限。