我有一个带有共享库的项目(动态加载),我正在尝试调试它。我得到以下错误消息:
No source file named /home/username/Code/path/to/project/MyFile.cpp.
在搜索了其他线程之后,我已经确保使用-g进行编译,并且相应的文件夹位于调试配置的源路径选项卡上。奇怪的是,它给出了正确的绝对路径:它引用的文件确实存在,所以我不明白为什么它不认为它在那里。
有人知道该怎么做吗?
发布于 2015-06-12 16:00:56
我也有同样的问题,但在我的情况下,这是我的错。我的一些项目被设置为发布配置,调试器自然找不到源文件信息。
发布于 2014-08-08 18:28:27
我也有同样的问题,但我的解决方案不同。打开项目"debug/src“+ "release/src”目录,确保没有filename.d文件包含任何可能已更改名称或不再存在的源文件的名称。我有一个,删除它,因为没有更多的错误。
因此,我假设,至少在我的例子中,错误是由超出范围的对象造成的。
发布于 2016-11-16 00:29:51
如果您同时使用cygwin和mingw (或其他变体),则可能会发生这种情况。如果使用cygwin中的gcc来编译源代码,那么在可执行文件中就会有cygwin路径。然后,如果调试器来自mingw,gdb将无法解释cygwin路径。解决这个问题的最简单的方法是运行->调试配置->调试器,并设置cygwin gdb (C:\cygwin64\bin\gdb.exe)的完整路径。这为我解决了问题。
https://stackoverflow.com/questions/12965726
复制相似问题