vim插件cscope工具的编译、安装与使用

1. 下载:http://download.chinaunix.net/download.php?id=3536&ResourceID=1900

2. 编译

# ./configure

#make

make 失败了:

[email protected]:~/.vim/cscope-15.5# make

make  all-recursive

make[1]: Entering directory ‘/root/.vim/cscope-15.5‘

Making all in doc

make[2]: Entering directory ‘/root/.vim/cscope-15.5/doc‘

make[2]: Nothing to be done for ‘all‘.

make[2]: Leaving directory ‘/root/.vim/cscope-15.5/doc‘

Making all in src

make[2]: Entering directory ‘/root/.vim/cscope-15.5/src‘

/bin/bash ../ylwrap `test -f ‘fscanner.l‘ || echo ‘./‘`fscanner.l .c fscanner.c -- :

Makefile:310: recipe for target ‘fscanner.c‘ failed

make[2]: *** [fscanner.c] Error 1

make[2]: Leaving directory ‘/root/.vim/cscope-15.5/src‘

Makefile:199: recipe for target ‘all-recursive‘ failed

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory ‘/root/.vim/cscope-15.5‘

Makefile:154: recipe for target ‘all‘ failed

make: *** [all] Error 2

3.cscope-15.5是03年的,非常老,换个新的版本cscope-15.8a.tar.gz

执行:

./configure

make

make install

编译通过,安装成功

3. 使用

进入内核目录:

cd /study/linux-git/linux-3.18.3

执行

cscope -Rbq

set tags=/study/linux-git/linux-3.18.3

:cs add cscope.out

:cs find c writel

这样,就可以看到是哪里有writel的定义了

如下内容参考自:vi/vim使用进阶: 程序员的利器 – cscope

(http://blog.csdn.net/xiangpingli/article/details/44007021)

这个命令会生成三个文件:cscope.out, cscope.in.out, cscope.po.out。其中cscope.out是基本的符号索引,后两个文件是使用”-q“选项生成的,可以加快cscope的索引速度。

在vim中使用cscope非常简单,首先调用”cscope add“命令添加一个cscope数据库,然后就可以调用”cscope find“命令进行查找了。vim支持8种cscope的查询功能,如下:

s: 查找C语言符号,即查找函数名、宏、枚举值等出现的地方

g: 查找函数、宏、枚举等定义的位置,类似ctags所提供的功能

d: 查找本函数调用的函数

c: 查找调用本函数的函数

t: 查找指定的字符串

e: 查找egrep模式,相当于egrep功能,但查找速度快多了

f: 查找并打开文件,类似vim的find功能

i: 查找包含本文件的文件

例如,我们想在source的源代码中查找调用do_cscope()函数的函数,我们可以输入:”:cs find c do_cscope“,

回车后发现没有找到匹配的功能,可能并没有函数调用do_cscope()。我们再输入”:cs find s do_cscope“,查找这个C符号出现的位置,现在vim列出了这个符号出现的所有位置。

vimrc中关于cscope接口的设置,使用时候加在.vimrc末尾:

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" cscope setting

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

if has("cscope")

set csprg=/usr/local/bin/cscope

set csto=1

set cst

set nocsverb

" add any database in current directory

if filereadable("cscope.out")

cs add cscope.out

endif

set csverb

endif

时间: 2024-09-27 14:09:12

vim插件cscope工具的编译、安装与使用的相关文章

vim+ctags+cscope工具

最近在看一个开源的项目,突然发现在Linux上不知道有什么方便的工具来看开源代码.以前,在Windows上用VS2010集成开发环境,对于任意一个函数直接有快捷键跳转到函数定义处.可现在在Linux上束手无策.然后,开始在网上找资料,才知道linux上有ctags的神器,唉..伤心,到底是菜鸟,连这些常用的工具都不知道,尚需努力啊!这里先记录学习下... 一.插件介绍 大部分unix系统都有ctags,它能跟vim很好地合作.ctags工具主要是用来遍历源代码文件生成tags文件,这些tags文

linux下vim的编译安装教程

之前安装YouCompleteMe的时候遇到vim版本不兼容的问题,看网上说是需要将vim版本提升到8.0及以上,然后就开始安装最新版本的vim,安装过程中的遇到了不少问题主要集中在配置方面和缺少插件,在这里把最终的安装方法贴出来,希望能帮到需要的朋友,也是考虑到自己以后可能还要用到. step1 为了使vim支持ruby.lua.perl.python2.python3编写的插件,在正式编译安装vim之前需要在系统中安装好相关插件,否则编译vim会出错. sudo yum install ru

[vundle]利用vundle工具来管理vim插件

转自:http://os.51cto.com/art/201507/484174.htm Vim是Linux上一款用途广泛的轻量级文本编辑工具.虽然对普通的Linux用户来说开始学用起来难度相当大,但鉴于它具有的种种好处,完全值得一学.至于功能方面,Vim可以通过插件实现全面定制.不过由于其高级配置,你可能需要在其插件系统上花一番时间,才能够高效地对Vim进行个性化定制.幸好,我们有几个工具可以简化我们使用Vim插件.Vundle就是本人每天使用的一款工具. 1. Vundle简介 Vundle

VIM插件攻略

工欲善其事,必先利其器.一个强大的开发环境可以大大提高工作效率.好吧,我知道这是废话...不过,我想一定有很多跟我一样打算进入Linux平台开发的新手,一开始都为找不到一个像Windows下的VS那样可以一键安装并且功能几乎完美无缺的开发工具而郁闷不已,甚至打算收回刚刚迈出的脚步.所幸的是,通过几天努力,我总算配置出了一个功能完备的基于Vim的开发环境.这个开发环境除了基本的Vim外,还包括Ctags,Taglist,Cscope,SuperTab,OmniCppComplete,Winmana

【Linux相识相知】yum的配置使用和程序包的编译安装

在上一篇博客中,写到了如何使用rpm命令来安装.卸载软件等,但是大家都知道,各个软件包之间可能存在依赖关系,如果安装某个软件需要额外的依赖其他若干的包,那么我们就需要将其他额外的包一个一个的安装上去,这样的一个过程是非常耗时的,所以出现了一个前端工具,如yum,dnf,apt-get等,本次博客就centos上的yum和程序包的编译安装做出详细的描述,最后还通过实际的例子介绍了程序包的编译安装. yum的实现原理 yum实现软件包的获取其实是基于C/S架构的,C为你的主机,S为yum repos

软件包管理rpm、yum及编译安装

库文件 查看二进制程序所依赖的库文件 ldd /PATH/TO/BINARY_FILE 管理及查看本机装载的库文件 ldconfig 加载库文件 /sbin/ldconfig -p: 显示本机已经缓存的所有可用库文件 名及文件路径映射关系 配置文件:/etc/ld.so.conf, /etc/ld.so.conf.d/*.conf 缓存文件:/etc/ld.so.cache rpm(RedHat Package Manager) 程序包管理器: 功能:将编译好的应用程序的各组成文件打包一个或几个

CentOS6.3编译安装Nginx1.4.7 + MySQL5.5.25a + PHP5.3.28

[准备工作] #在编译安装lnmp之前,首先先卸载已存在的rpm包. rpm -e httpd rpm -e mysql rpm -e php yum -y remove httpd yum -y remove mysql-server mysql yum -y remove php yum -y remove php-mysql #禁用SeLinux,Selinux可能会致使编译安装失败,我们先禁用它. #sed -i 's/SELINUX=enforcing/SELINUX=disabled

CentOS6.3 编译安装LAMP(3):编译安装 MySQL5.5.25

所需源码包: /usr/local/src/MySQL-5.5.25/cmake-2.8.8.tar.gz /usr/local/src/MySQL-5.5.25/mysql-5.5.25.tar.gz 1.安装cmake  MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具. 因此,我们首先要在系统中源码编译安装cmake工具. #编译安装 cd /usr/local/src/MySQL-5.5.25/cmake-2.8.8 ./con

挺好用的Vim插件

ctags C程序阅读辅助工具.在看C/C++代码的时候经常需要在文件之间跳来跳去,这是很麻烦的事,ctags就是解决这种问题的.ctags是linux的工具,但是它是用来生成tags文件给vim用的,vim无需额外插件即可使用. $ctags -R 在终端,生成tags文件 ctrl + ] 在vim,跳到光标所指的符号的定义处,跳转时会有栈记录跳转的过程,可以回跳 ctrl + t 在vim,与上条命令相反,即回跳 cscope C程序阅读辅助工具.cscope经常是和ctags搭配使用的,