gdb找不到cc编译的源文件

时间:2012-11-14 09:21:44

标签: debugging gdb cc

我有一个源文件testcc.c只打印一个“Hello,World”,我用cc编译它,如下所示

cc -g -o testcc testcc.c

运行时它工作正常。 现在我想用gdb用以下命令调试它。

gdb testcc

我可以看到gdb的输出。

  

GDB是免费软件,欢迎您分发它的副本   在一定条件下;键入“显示复制”以查看条件。   GDB绝对没有保修;输入“show warranty”   细节。 GDB 4.16(sparc-sun-solaris2.6),版权所有1996 Free Software   基金会,公司......

但是,当我尝试在第5行设置断点时,我收到以下消息

(gdb) break 5
Breakpoint 1 at 0x10814: file /home/users/xxx/C, line 5.
(gdb)

问题是/ home / users / xxx / C是我当前的工作目录,而不是源文件!

然后,我尝试使用文件:line-number options

(gdb) break testcc.c:5
No source file named testcc.c.

因此,我包含文件名的完整路径,如下所示

(gdb) break /home/users/xxx/testcc.c:5
No source file named /home/users/xxx/testcc.c.

我很困惑,文件在那里,为什么gdb找不到它? 我还尝试在启动gdb

时指定搜索源文件的目录
gdb -d /home/users/xxx/C testcc

它仍然不起作用,有什么问题?

1 个答案:

答案 0 :(得分:1)

经过一整天的奋斗,我终于发现我们应该使用dbx来调试Sun cc编译器编译的程序。这是链接说的。

http://www.cs.cmu.edu/~gilpin/tutorial/