因為工作的關係常常需要在linux下trace code
這裡分享的是如何利用vim+cscope去trace code
當然如果你覺得Source insight已經很夠用的話就可以自動略過這篇文章
首先先安裝相關套件
拿Fedora為例
yum install cscope
yum install ctags
然後利用下面的myscope.sh去建立database以利trace
#!/bin/sh
#1.搜尋相關興趣的副檔名
find . -name "*.h" -o -name "*.c" -o -name "*.cc" -o -name "*.cpp" -name "*.pp" > cscope.files
#2.根據找到的檔案做關連
cscope -bkq -i cscope.files
ctags -R
接著打開vim
cs add cscope.out //加入資料庫
接著就可以開始trace code拉
使用方法
s: 查找C语言符号,即查找函数名、宏、枚举值等出现的地方
g: 查找函数、宏、枚举等定义的位置,类似ctags所提供的功能
d: 查找本函数调用的函数
c: 查找调用本函数的函数
t: 查找指定的字符串
e: 查找egrep模式,相当于egrep功能,但查找速度快多了
f: 查找并打开文件,类似vim的find功能
i: 查找包含本文件的文
例如想搜尋foo函數定義的地方
:cs f g foo
或者是全部檔案有出現foo的函數/變數
:cs f s foo
或者是想搜尋example.c這個檔案在哪的地方
:cs f f example.c
其他的功能就自已去玩囉
參考連結:
http://www.cnblogs.com/jianyungsun/archive/2011/07/24/2115298.html
2012年4月23日 星期一
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言