歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu 安裝 Cscope 和 Ctags

Ubuntu 安裝 Cscope 和 Ctags

日期:2017/2/28 15:51:00   编辑:Linux教程

一、安裝Cscope 軟件

點擊此處下載Cscope軟件。

tar -jxvf cscope-15.7a.tar.bz2

cd cscope-15.7a

./configure

make

sudo make install

安裝過程出現的問題:

1.出現`flex' is missing on your system:sudo apt-get install flex

2.出現yacc: 未找到命令:sudo apt-get install byacc

3.出現“curses.h not found”之類的錯誤:sudo apt-get libncurses-dev

--------------------------分割線--------------------------

1:按照vim裡cscope的參考手冊(在vim中執行”:help cscope”命令),把cscope功能加到.vimrc裡後(需要你的vim在編譯時選擇了”–enable-cscope”選項,否則你需要重新編譯vim),配置就算完成了。然後用下面的命令生成代碼的符號索引文件;

2: 到相應的內核源碼目錄下;

3:cscope -Rbkq

這個命令會生成三個文件:cscope.out, cscope.in.out, cscope.po.out。

其中cscope.out是基本的符號索引,後兩個文件是使用”-q”選項生成的,可以加快cscope的索引速度。

上面所用到的命令參數,含義如下:

-R: 在生成索引文件時,搜索子目錄樹中的代碼

-b: 只生成索引文件,不進入cscope的界面

-k: 在生成索引文件時,不搜索/usr/include目錄

-q: 生成cscope.in.out和cscope.po.out文件,加快cscope的索引速度

接下來,就可以在vim裡讀代碼了。

不過在使用過程中,發現無法找到C++的類、函數定義、調用關系。仔細閱讀了cscope的手冊後發現原來cscope在產生索引文件時,只搜索類型為C, lex和yacc的文件(後綴名為.c, .h, .l, .y),C++的文件根本沒有生成索引。不過按照手冊上的說明,cscope支持c++和Java語言的文件。

於是按照cscope手冊上提供的方法,先產生一個文件列表,然後讓cscope為這個列表中的每個文件都生成索引。

為了方便使用,編寫了下面的腳本來更新cscope和ctags的索引文件:

#!/bin/sh

find . -name "*.h" -o -name "*.c"-o -name "*.cc" > cscope.files

cscope -bkq -i cscope.files

ctags -R

二、安裝Ctags軟件

ctags:

(1)安裝

http://ctags.sourceforge.net/

Ubuntu下可以使用apt-get來安裝:

sudo apt-get install ctags

更多Ubuntu相關信息見Ubuntu 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=2

Copyright © Linux教程網 All Rights Reserved