Emacs Cscope安装

2 篇文章 0 订阅

 

1 前面的话


在Linux下,cscope算得上是非常不错的代码浏览工具了。尤其是结合Emacs/Vim,更能显示它的威力,我就是使用Emacs+cscope来浏览kernel代码的。当然,如果你能配合cedet或者etags或者ctags使用更好,但我不想那么麻烦^_


2 安装Cscope


2.1 下载cscope


这是cscope的主页:

http://cscope.sourceforge.net/


这是cscope的下载地址:

http://sourceforge.net/projects/cscope/files/


2.2 编译安装


仍然是老三步:

./configure
make
sudo make install


Cscope 的发行包里面有个 xcscope.el 能很好地用于XEmacs 。它处于源代码包的 contrib/xcscope 目录下,请将xcospe放入.emacs.d/中。


2.3 配置

(require 'xcscope)

;; 设置仅在打开c/c++文件时打开
(add-hook 'c-mode-common-hook 
'(lambda()
(require 'xcscope)))


2.4 使用


如果需要使用cscope,请将cscope-indexer放入该目录,使用chown命令将其设置为可执行。

chown 744 cscope-indexer


接着使用下面的命令就会生成索引文件:

cscope-indexer -r


它会生成cscope.files和cscope.out两个文件或目录。


2.5 加快索引速度


实际上,cscope自带的cscope-indexer是一个shell脚本,里面的核心内容分为两部分:一部分是搜索并记录当前目录以及子目录下所有.c/.h/.cpp等文件列表;另外一部分使用cscope命令生成索引文件。而对于linux-kernel这样的工程来说,如果不在索引方式上做优化,找个全局变量或者函数调用可能够你喝杯茶了。


所以,使用 -k 命令选项可以对kernel进行优化以及使用 -q命令选项进行反向索引,以加快搜索的速度。我将cscope-indexer脚本更改如下:


# 原来的设置
# cscope -b -i $LIST_FILE -f $DATABASE_FILE
# 现在的设置
cscope -b -q -k -i $LIST_FILE -f $DATABASE_FILE


同时,当你对源文件进行更改的时候,cscope会重新生成索引文件,这样会使得查找很慢。你可以在~/.emacs下添加如下代码,是cscope默认不更新索引数据。


;; 打开cscope时不更新,提高索引速度
(setq cscope-do-not-update-database t)




Date: 2012-10-14 Sun

Author: lishuo

Org version 7.9.1 with Emacs version 23

Validate XHTML 1.0
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值