(零)阅读源码的工具及参考资料

工具

分析源码,首先对工具的准备很重要,在windows有阅读源码的利器source insight,但是由于我的日常系统是centos,并且不想在虚拟机下进行分析,所以找了一些linux阅读源码的工具。
我使用的主要工具是:ctags+cscope
接下来我简单介绍一下这些工具的使用

ctags的使用

在源码根目录执行ctags -R命令,递归的为源码建立tags,在根目录会生成一个Tags的文件,存放各种函数和变量的tag。
让光标停在函数/变量上,ctrl + ]即可跳转到定义处,ctrl + t可以回到你跳转前的位置。
如果文件太多了,用这个可能不太好使了。所以下面推荐cscope(一般是内建的)

cscope的使用

在源码根目录运行cscope -Rbq,就会生成cscope.out文件(索引数据库)
- R:在生成索引文件时,搜索子目录树中的代码
- b:只生成索引文件,不进入cscope的界面
- q:生成cscope.in.out文件和cscope.po.out文件,加快cscope索引速度

在vim中执行cs add cscope.out添加数据库
接下来查询命令:cs find s var(x代表查询选项,var表示要查找的函数/变量名)
大致有以下8种查询方式:

  • s:查找C语言符号,即查找函数名、宏、枚举值出现的地方
  • g:查找函数、宏、枚举等定义的位置
  • d:查找本函数调用的函数
  • c:查找调用本函数的函数
  • t:查找指定的字符串
  • e:查找egrep模式
  • f:查找并打开文件
  • i:查找包含本文件的文件

参考资料

主要参考了官方的文档http://www.wangafu.net/~nickm/libevent-book/
以及 http://blog.csdn.net/sparkliang 这系列的博客

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值