gdb没有加载源代码

如果源文件和可执行文件不在同一个目录中该如何处理?例如:
~/src/task.c
~/bin/task
如何在gdb中设置?
如果在同一个目录中,源文件与可执行文件不同名,又不想改变文件名,又该如何设置?

---------------------------------------------------------------

不需要在同一目录中,也不需要同名就可以找到吧!编译加-g了吗?
实在不行可以用在gdb环境下使用source命令吧,source ~/src/task.c

---------------------------------------------------------------

比如说可执行文件main在当前目录,h文件在当前目录的子目录include下,cpp文件在当前目录的子目录src下,那么可以写一个简单的Makefile:
all: .o
g++ -o main .o
.o: src/.cpp include/
.h
g++ -c -g src/
.cpp

---------------------------------------------------------------

只要你添加-g选项,并且在gdb过程中不修改原文件的路径(并且是可以访问的)就没有任何问题

Published At
Categories with 服务器类
Tagged with
comments powered by Disqus