GDB使用的2个技巧
这里推荐一个gdb使用上的技巧,你可以在gdb时输入-tui参数,gdb ./a.out -q -tui
得到的效果就是这样
另外一个技巧是watch 变量。
如果一个变量被watch了,那么当这个变量被修改的时候,程序会停下来。就像打了断点一样。
比如我断点打在了函数的开头,然后watch这个函数的一个局部变量i。然后c让程序继续运行。程序会停在34行。i++位置处。
当时不知道怎么的watch变量后程序不停下来。困扰了我很久,尝试了很久,最后都放弃了。但是现在它又能停下来了,现在复现不出当时的场景,再次遇到再说吧。
关于第一技巧,如果在用gdb打开可执行文件,不加-tui,而是在打开后,按快捷键ctrl+x+a听说也是可以的。但是我会出现no source available 现象,至今没有解决这个问题,参考的资料有:
尝试解决1:https://www.manongdao.com/article-2154823.html
没有解决方案
中途发现一些文章以后可能用到:
https://wenku.baidu.com/view/553554eea2c7aa00b52acfc789eb172ded63993a.html
关于焦点:https://www.cnblogs.com/loveyan1314/articles/10333015.htm
关于分割窗口:关于分割窗口
尝试解决2:http://www.blogdaren.com/post-2651.html
原版本的GDB无法识别更高版本的GCC生成的的调试符号格式(debug symbols format)
编译时,-g参数改为-gdwarf-3
还是没有解决。
查看apt update 和 upgrade的区别
apt update:只检查,不更新
apt upgrade:更新已安装的软件包
用法:sudo apt upgrade 软件包名