前几天,偶然看到网上吐槽,说找工作,被面试官问到gdb用过没,老实答从来不用,结果人家不录用, 其实此人乃高手,基本靠眼睛看,或者外围写日志,后来被面试官的领导认可了技术能力。
老程序员都知道,很久很久以前,确实写代码只需要文本编辑器,靠良好的习惯和正确的思路保证质量,找问题基本靠眼睛看,最多写点输出日志(特别是内核程序或并行程序同步机制等),什么IDE或调试工具等都不需要,这个其实是基本功。
不过,现在这个行业,不管是找工作还是解决问题,调试(Debug)及调试工具往往不可少。从正面角度思考,也不能说现在的人能力退化,只是面对现实中那么多语言、那么多人写的代码,良好的工具往往会大大提高效率,使用一下也没什么不好。
下面再简单谈谈gdb:linux一贯秉承简洁高效的风格,其经典的gdb调试器确实非常强大有用。基本gdb+gdbserver就够用了,也有爱好者写了GUI界面,如GNU官网上推荐的Insight、DDD等,但是现在基本不维护了。我特地去下载了最新版本(也已经过去好几年了),在最新的CentOS上没有编译成功,仔细看一下原因是binutils版本太高了,一定要编译的话得降级手工处理一下,不高兴弄了,不过确实也不需要。实在要直观一点的话,用软件仓库中的cgdb也够了。
新闻热点
疑难解答