日期:2014-05-16  浏览次数:20835 次

gdb调试,可执行文件和 源文件不在同一个目录怎么办?
我用makefile写了个编译程序,因为makefile自动搜索源文件路径,所以在写这个makefile文件时,我的每个源文件 只有文件名,而没附带路径名,说白了,我编译完成后,我的.h 文件在 /SE/include中,.cpp文件在 /SE/src中, .o文件和 可执行文件在/SE/bin中,然后我是在/SE/bin中 运行gdb ./a.out 的,然后用L命令时…… 就提示不存在文件了……,我的每个 g++编译过程都加上了-g选项,还请达达们指点


PS:我用了 gdb的-d 和dir命令 好像都不行……还是我用的方法不对?请指点

------解决方案--------------------
gdb a.out
b main //设置断点
run //运行
------解决方案--------------------
带路径你可以试试 g++ ../abc.cpp ./seh/def.cpp ../efgh/ijk.cpp
------解决方案--------------------
l path/filename.c:linenumber
------解决方案--------------------
探讨

l path/filename.c:linenumber

------解决方案--------------------
哈哈,那你把你当前的工作路径移动到test.cpp不就可以了?
------解决方案--------------------
探讨
引用:
哈哈,那你把你当前的工作路径移动到test.cpp不就可以了?

可是 一个大的工程 .cpp文件 放在很多文件夹下呢…… 我的意思是 不可以自动搜索?

------解决方案--------------------
dir 指定下代码的路径