当前位置: 技术问答>linux和unix
gdb 有些行的代码看不到
来源: 互联网 发布时间:2016-03-15
本文导语: 为什么在gdb的时候有些行的代码看不到 在main函数里跟踪有些行的代码看不到,但不是在分支里。如果光l,l,l的话,能看到源文件里有相应的代码。 还有,和main函数在同一个文件里的函数有的s进不了。 为什么阿,我...
为什么在gdb的时候有些行的代码看不到
在main函数里跟踪有些行的代码看不到,但不是在分支里。如果光l,l,l的话,能看到源文件里有相应的代码。
还有,和main函数在同一个文件里的函数有的s进不了。
为什么阿,我快疯了。
在main函数里跟踪有些行的代码看不到,但不是在分支里。如果光l,l,l的话,能看到源文件里有相应的代码。
还有,和main函数在同一个文件里的函数有的s进不了。
为什么阿,我快疯了。
|
没出现过类似问题..如果说单步执行看不到的语句,那就证明该语句未执行.否则一定可以显示.
|
你重新编译连接下吧
估计是你修改了代码,但是含有调式信息的程序并没有重新编译
才会导致如此问题
另外在程序中加入汇编代码,有时候也会出现类似情况,或者尝试修改text数据段的内容等等
|
可能有几种情况会发生这样的问题:
一:unix编本的原因
二:你gdb 跟踪的可执行程序不是最新程序编译生成的
建议你重新编译, 另外你说用S不能进入函数接口的问题,这样的情况在很多UNIX是很正常的, 建议你设置断点, 用 b + 你想进入的函数接口, 或者用 b + 你函数接口所在可文件的行数。 祝你好运。
一:unix编本的原因
二:你gdb 跟踪的可执行程序不是最新程序编译生成的
建议你重新编译, 另外你说用S不能进入函数接口的问题,这样的情况在很多UNIX是很正常的, 建议你设置断点, 用 b + 你想进入的函数接口, 或者用 b + 你函数接口所在可文件的行数。 祝你好运。
|
楼主,你输入"ls -"接可以看到前面部分的程序了。