当前位置:  技术问答>linux和unix

gdb调试程序乱跳问题

    来源: 互联网  发布时间:2017-05-26

    本文导语:  我单步调试redis-cli,断点设的718行,然后run却停在别的地方,感觉gdb显示的代码和程序正在执行的代码行数对不上,然后后面就是一会执行后面一会执行前面,完全搞不懂。。。 有人知道这是咋回事吗?Thanks in advan...

我单步调试redis-cli,断点设的718行,然后run却停在别的地方,感觉gdb显示的代码和程序正在执行的代码行数对不上,然后后面就是一会执行后面一会执行前面,完全搞不懂。。。
有人知道这是咋回事吗?Thanks in advance!

(gdb) break linenoise.c:718
Breakpoint 1 at 0x414347: file linenoise.c, line 718.
(gdb) run
Starting program: /root/redis-2.8.13/src/redis-cli 
[Thread debugging using libthread_db enabled]

Breakpoint 1, linenoiseRaw (prompt=0x655780 "127.0.0.1:6379> ") at linenoise.c:933
933             if (enableRawMode(STDIN_FILENO) == -1) return -1;
(gdb) info break
Num     Type           Disp Enb Address            What
1       breakpoint     keep y   0x0000000000414347 in linenoise at linenoise.c:718
         breakpoint already hit 1 time
(gdb) s
linenoiseEdit (prompt=0x655780 "127.0.0.1:6379> ") at linenoise.c:718
718         l.ofd = stdout_fd;
(gdb) 
716          * specific editing functionalities. */
(gdb) 
717         l.ifd = stdin_fd;
(gdb) 
719         l.buf = buf;
(gdb) 
720         l.buflen = buflen;
(gdb) 
721         l.prompt = prompt;
(gdb) 
718         l.ofd = stdout_fd;
(gdb) 
721         l.prompt = prompt;
(gdb) 
724         l.len = 0;

|
also, are sure this is the right source tree for the binary?

You will have to disable all optimization options during compilation. Jumping around could also happen if -O is enabled.

    
 
 

您可能感兴趣的文章:

  • 如何使用linux下gdb来调试python程序
  • gdb调试时命令行参数如何输入?比如main(int argc,char **argv)中,我要把一个filename作为argv[1]传入给gdb调试
  • 请问gdb是不是只能调试gcc编译的程序,在unix下用其它编译器编译的程序是不是不一定能用gdb调试的?
  • linux gdb: 我在一台机器上编译的程序用GDB可以调试,把程序放到另外一台机器上调试,调试信息就没有了 这是什么原因呢?
  • GDB调试 GDB挂了。。。
  • gdb调试的问题,求高手。 iis7站长之家
  • linux下用gdb调试程序感觉非常不方便,不知道大家使用的什么工具进行调试的呀?
  • 关于GDB无法调试segmentaton fault的问题,调试就死机
  • GDB调试问题,多共享库调试
  • gdb 怎么调试socket程序
  • 程序调试工具 GDB
  • 写调试器(像gdb)的一般思路是什么
  • gdb调试时的文件格式问题
  • gdb调试的问题,求高手。
  • gdb如何进行调试?
  • gdb调试动态链接库
  • 关于gdb调试资料---详细的
  • 哪位兄弟知道?gdb如何调试动态连接库
  • 在linux下除了gdb外还有没其他好用的调试器?
  • 在windows下编译和调试远程GDB BVRDE
  • gdb 调试
  • 使用GDB调试程序,如何正确的向程序传递参数.
  • 请问gdb怎么处理带有启动参数的程序和多进程程序?
  • gdb也能调多线程程序吗?
  • GDB调试C++程序时如何使程序在运算符重载函数处停止
  • 求助!gdb调试程序
  • GDB下怎样调试多线程程序?
  • gdb调试程序时directory设置的问题
  • GDB调试程序报如下错误:
  • gdb如果调试64位的程序呢?
  • gdb 如何保存传递给调试程序的参数
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • gdb 使用问题请教
  • gdb的问题,请教,会者不难,快来拿分
  • gdb升级的问题
  • 找高手:gdb脚本传递参数问题
  • gdb运行过程中报错问题
  • GDB在Solaris9上的安装问题
  • gdb下用shell写环境变量的问题
  • 一个GDB的问题?
  • 新用linux的GDB, 版本是出现6.3.3.0,出现奇怪问题, 可能是环境设置的问题, 大人帮忙
  • 求助:gdb调试问题
  • 求助!第一次使用gdb,出问题不懂怎么解决
  • gdb问题,
  • in关于insight gdb的问题
  • 问一个关于gdb的问题
  • gdb中使用set给变量赋值的问题
  • gdb调试问题,关于list命令的
  • 关于gdb的问题!!!!!
  • 一个GDB的问题
  • gdb找不到源文件的问题
  • 一个关于gdb的小问题
  • 使用gcc gdb的大牛进来说说gdb的强大之处在哪。我刚学linux了,vim我确实体会到了其强大之处。而对gcc gdb,体会不到gdb这工具的强大之处。
  • 请教 make gdb-6.4 出现 make[4]: Entering directory `/tmp/gdb-6.4/gdb/doc'
  • 在rh9上无法使用gdb是怎么回事呢
  • gdb高手请指教
  • 请问,有人研究过gdb-insight源码吗?
  • gdb调试
  • Linux下gdb如何追踪进入子进程??急急7777777777777
  • 如何编译gdb
  • 怎样在windows中编译生成gdb
  • 如何阅读GDB源代码?
  • 我的gdb为什么不能设置logging?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3