Linux 平台下阅读源码的工具

前言

看源代码是一个程序员必须经历的事情,也是可以提升能力的一个捷径.个人认为: 要完全掌握一个软件的方法只有阅读源码在Windows下有sourceinsight这个源码阅读软件(虽然我没用过,但是网上评价还不错),由于我是个Linuxer,并不喜欢用Windows,所以自然是选择在Linux下阅读源码的工具了.下面我将逐一介绍在Linux下阅读源码的工具.

vim+ctags+cscope

源码阅读三剑客.vim配合ctags和cscope,足以在源代码里面自由翱翔,在函数和变量间自由跳转.

安装sudo apt-get install vim ctags cscope使用vim

vim的使用就略过了,网上资料很多,不是一篇文章能说完的,未来我可能会写一篇vim的使用心得推荐一篇简明 Vim 练级攻略,看完就差不多会用了.

ctags

ctags的使用很简单,vim已经内置了对ctags的支持首先在源代码根目录执行ctags -R,递归的为源码建立tags,在根目录会生成一个Tags的文件,存放各种函数和变量的tag,便于跳转

使光标在函数或变量上,Ctrl + ]即可跳转到其定义处Ctrl + t可以回到你跳转之前的位置

对于简单的代码,ctags就够用了,但是对于比较复杂的代码来说,ctags显得有点力不从心,于是,下一位剑客就登场了.

cscope

vim同样内置了对cscope的支持.首先在源代码根目录执行cscope -Rbq,就会生成cscope.out文件(索引数据库)

-R: 在生成索引文件时,搜索子目录树中的代码-b: 只生成索引文件,不进入cscope的界面-q: 生成cscope.in.out和cscope.po.out文件,加快cscope的索引速度

然后在vim中执行:cs add cscope.out,添加数据库.接下来就可以使用:cs find x var进行查找.(x代表查询选项,var表示要查找的函数或变量名)cscope支持8种查询方式

s: 查找C语言符号,即查找函数名、宏、枚举值等出现的地方g: 查找函数、宏、枚举等定义的位置,类似ctags所提供的功能d: 查找本函数调用的函数c: 查找调用本函数的函数t: 查找指定的字符串e: 查找egrep模式,相当于egrep功能,但查找速度快多了f: 查找并打开文件,类似vim的find功能i: 查找包含

比丘资源网 » Linux 平台下阅读源码的工具

发表回复

提供最优质的资源集合

立即查看 了解详情