扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在Linux下调试程序一般用GDB来执行。
这里简要介绍一下是否gdb调试程序的方法:
(1)进入gdb调试:
gdb + 已经编译通过的可执行程序 -》 就进入调试模式。例如:gdb MiddlePublisher
(2)r + 运行时的参数 -》 开始运行可执行程序。例如 r -lxml2 -f refile
(3)b + 断点 -》设置调试的断点。两种:一种是:b CMSTask.cpp:200 表示在CMSTask.cpp文件的第200行设置断点。另一种:b TaskManager::buildPubWinTask 表示在执行buildPubWinTask这个函数的时候停止。
(4)取消断点:
dis 1 表示取消第一个断点
dis 2 表示取消第二个断点
(5)查看设置断点信息: info b
(6)在断点停止处查看所在代码的详细信息:l
(7)可以在gdb中直接编译,然后再重新运行时,gdb会直接执行新编译好的可执行程序。例如:直接在gdb下执行make后再重庆运行。
(8)跟进一个函数:s
如果设置的断点是在一个函数入口。到达该断点时,键入s就可以进入该函数内部进行调试。如果有多个函数就多次键入S来进入内部的函数。
PS:
1、在SecureCRT远程登录界面上开启多个窗口。在窗口之间切换时用:Alt+1,Alt+2.....表示切换到第1个,第2个窗口。
2、同样在在SecureCRT远程登录界面上要粘贴复制好的内容用:Shift+Insert。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者