系统 : Ubuntu 14.04

1 安装 sudo apt-get install cscope

2 使用

方法一:  在工程目录上 直接 输入 命令 cscope -Rbqk

最后生成 cscope.in.out  cscope.out  cscope.po.out 三个文件

这样虽然能用但是会导致以下两个问题:

1 )     cscope.out 是根据文件的相对路径生成的 所以会导致只能在 cscope.out 生成的目录下 使用cscope

为了在任意子目录下都可以用 可以使用 -P 参数

2)   默认情况下 cscope 会忽略  .cpp 或者 .java 这类文件,导致在这些文件上无法使用cscope 做一些查找

函数定义或者调用处之类的一些操作

方法二

使用 cscope.files 文件去建立cscope , 在这个 cscope.files 文件加入这些cpp 或这 java 的文件

(包含其路径信息 ) cscope 就会使用cscope.file 去匹配他扫描的文件 ,就不会出现方法一的问题二了,

cscop.files 文件里面记录了文件的路径信息,如果使用绝对路径那么cscope 依据这个文件建立的

cscope.out 文件 也是绝对路径的那么 我们就可以在 工程的任意目录下使用了,解决方法一的问题一

使用find 命令 找出工程下所有需要的使用的文件 再重定向到 cscop.files 即可完成

对应的脚本:

CSCOPE_PATH=/platform_code  //需要建立cscop工程的源码目录 
   CSCOPE_FILES=/cscope_save_dir //保存cscope.files文件的目录
   cd /
   find $CSCOPE_PATH/ \
       -path "./out" -prune -o \
       -path "./prebuilts" -prune -o \
       -name "*.cpp" -o -name "*.java" -o -name "*.[chsS]" > $CSCOPE_FILES/cscope.files

接着进入 cscope.files 文件所在目录 运行 以下命令即可

cscope -b -q -k

这里不再需要使用 -R 参数 因为 cscope.file记录了所需的所有的目录下的文件了

参考网址:Using Cscope on large projects (example: the Linux kernel)

3 vim 上使用 cscope

使用前要先与cscope.out建立链接 才能使用 cs find 命令去找函数的定义或者调用处等操作

vim 编辑界面 输入 :cs add cscope.out   //根据cscope.out文件 所在的位置作修改

接着即可使用 :cs find 命令了

一般直接在 vimrc 进行配置 解决这些繁琐的操作

例如在 vimrc 加入:

if has("cscope")
    set csprg=/usr/bin/cscope
    set csto=1
    set cst
    set nocsverb
              " add any database in current directory
    cs add /cscope/cscope.out   #根据cscope.out所在的位置做修改
    set csverb
    nmap <C-\>s :cs find s <C-R>=expand("<cword>")<CR><CR> 
    nmap <C-\>g :cs find g <C-R>=expand("<cword>")<CR><CR>  
    nmap <C-\>c :cs find c <C-R>=expand("<cword>")<CR><CR>  
    nmap <C-\>t :cs find t <C-R>=expand("<cword>")<CR><CR>  
    nmap <C-\>e :cs find e <C-R>=expand("<cword>")<CR><CR>  
    nmap <C-\>f :cs find f <C-R>=expand("<cfile>")<CR><CR>  
    nmap <C-\>i :cs find i ^<C-R>=expand("<cfile>")<CR>$<CR>
    nmap <C-\>d :cs find d <C-R>=expand("<cword>")<CR><CR>

endif

参考网址 Vim/Cscope tutorial

项目中 搭建 cscope 使用环境相关推荐

  1. OSGI企业应用开发(二)Eclipse中搭建Felix运行环境

    上篇文章介绍了什么是OSGI以及使用OSGI构建应用的优点,接着介绍了两款常用的OSGI实现,分别为Apache Felix和Equinox,接下来开始介绍如何在Eclipse中使用Apache Fe ...

  2. 4.1 MyEclipse中搭建Struts2开发环境

    4.1 MyEclipse中搭建Struts2开发环境 (尊重劳动成果,转载请注明出处:http://blog.csdn.NET/qq_25827845/article/details/5320594 ...

  3. php7开发的项目怎么样,如何在PHP7项目中搭建一个多线程

    如何在PHP7项目中搭建一个多线程 发布时间:2021-03-05 15:31:22 来源:亿速云 阅读:93 作者:Leah 这期内容当中小编将会给大家带来有关如何在PHP7项目中搭建一个多线程,文 ...

  4. 在Xcode7中搭建python开发环境

    在Xcode7中搭建python开发环境 我使用的版本为Version 7.3 (7D175),关于基础配置部分,参考了Xcode6中搭建python开发环境的方法 环境搭建 1.找到电脑上安装Pyt ...

  5. 在Windows中搭建python开发环境与使用初步(适合初学者)

    在Windows中搭建python开发环境与使用初步 安装设置python运行环境 到网站https://www.python.org/downloads/windows/ 找到合适版本,下载. 双击 ...

  6. 如何在 Windows 10 中搭建 Node.js 环境?

    2019独角兽企业重金招聘Python工程师标准>>> [编者按]本文作者为 Szabolcs Kurdi,主要通过生动的实例介绍如何在 Windows 10 中搭建 Node.js ...

  7. 在mac中搭建asp.net环境并开发第一个程序

    在mac中搭建asp.net环境并开发第一个程序 一.搭建环境 1.安装.NET Core - 要使用.NET Core首先在终端上安装Openssl 更新homebrew后下载安装openssl $ ...

  8. 在Eclipse中搭建Python开发环境之三新建python 提示django not found

    python 不是内部或外部命令 现在我假设你的python安装在C:\Python26目录下,设置环境变量方法如下: 方法一.我的电脑->属性->高级->环境变量->系统变量 ...

  9. linux python开发环境_如何在Linux系统中搭建Python编程环境

    1 在大多数的Linux系统中,基本上都默认安装了Python,也就是说,在Linux的系统中基本上是不需要安装什么软件,就可以使用Python. 下面以ubuntu操作系统为例,看看如何在Linux ...

最新文章

  1. 转正答辩ppt_同心同行 乘风破浪 兴业装饰新员工转正考核圆满完成
  2. python之父叫什么-Python之父曾强力推荐的两本书,至今仍有很多人拜读
  3. Python+selenium 自动化-滚动的使用方法,如何滚动到元素的位置
  4. java删除页面数据不刷新_Ajax请求数据与删除数据后刷新页面
  5. UBuntu安裝使用PIP
  6. 线程魔术技巧:Java线程可以做的5件事
  7. git 初步使用01
  8. 从入门到深入Fiddler 2 (二)
  9. 32年寻获上帝粒子,华人女学者自述高能人生故事
  10. 选主元的高斯-约旦(Gauss-Jordan)消元法解线性方程组/求逆矩阵
  11. java虚拟机手机系统,微软java虚拟机
  12. 设计模式之——建造者模式
  13. 关于提高数据库查询效率的问题
  14. 动物统计 nyoj286
  15. 智慧小区智能物业管理系统综合解决方案
  16. latex图表中英文双标题的使用技巧
  17. python 第二天
  18. word中输入空格变点
  19. 交换机的背板容量、交换容量和包转发能力
  20. 【Android】kotlin语法学习

热门文章

  1. 牛人犀利的对苹果,微软,黑莓和安卓等手机系统的见解
  2. java打字游戏课程设计_java课程设计打字游戏
  3. mysql innodb 读加锁_InnoDB 读大量数据时会加读锁么?
  4. 理解极大似然估计与最大后验概率估计
  5. Python机器学习11——支持向量机
  6. 计算机基础知识判断题答案,计算机基础知识试题及答案判断题
  7. 如何下载O2OA办公开发平台?
  8. JAVA设计模式什么鬼(初探)——作者:凸凹里歐
  9. java获取Win系统日志最后(最新)开关机时间记录等
  10. 启明星辰天清汉马USG防火墙NAT回流设置