您的位置:首页 > 其它

Emacs 24.3 在Ubuntu 12.04LTS

2013-08-23 01:14 141 查看
原文地址: http://zabambo.com/blog/?p=45

原标题是


ubuntu下emacs24.1安装及配置

不过24.1 和 24.3 我想差别不会太多, 目前最新的24.3 应该也可以吧.

主要步骤如下:

首先是几个准备 Emacs 可以去GNU下载. 这里提供一个 List 内有 各种版本的下载地址. (我在北京的家里下载速度还是蛮快的) http://mirrors.ustc.edu.cn/gnu/emacs/
Ubuntu

Emacs24.3 tar.gz 包.

cedet-1.1 CEDET is
a collection of tools written with the end goal of creating an advanced development environment for Emacs users

http://sourceforge.net/projects/cedet/files/cedet/cedet-1.1.tar.gz/download

cscope-15.7a

http://sourceforge.net/projects/cscope/files/cscope/15.7a/cscope-15.7a.tar.bz2/download

以下的步骤我觉得蛮详细了 24.1 改24.3的细节就不再更改了.

1、umcompress:

$tar -zxv -f emacs-24.1.tar.gz -C ~/Programs

2、rename:

$mv emacs-24.1 Emacs24

3、follow emacs’ INSTALL file, run:

$cd Emacs24

$./configure

4、Err:no X development lib, require Gtk+…; install Gtk+;

$sudo apt-get install gnome-core-devel

or $sudo apt-get install libgtk2.0-dev

$sudo apt-get install libxpm-dev

$sudo apt-get install libjpeg62-dev

$sudo apt-get install libgif-dev

$sudo apt-get install libtiff4-dev

$sudo apt-get install libncurses5-dev

5、follow emacs’s INSTALL file, run:

$./configure

6、no errors then:

$make

$sudo make install

7、download cedet,uncompress to emacs folder

8、build cedet

$cd cedet

$emacs -Q -l cedet-build.el -f cedet-build

9、install cscope

$cd cscope15.7

$./configure

$make

$make install

$cp ./contrib/xcscope/cscope-indexer /usr/bin

$cp ./contrib/xcscope/xcscope.el emacs/site-lisp/

下面是.emacs的配置信息

10、setting in file .emacs

;;—————-cedet setting———————

(load-file “~/Programs/Emacs24/cedet/common/cedet.el”)

(global-ede-mode 1) ; Enable the Project management system

;; (semantic-load-enable-minimum-features)

;; (semantic-load-enable-code-helpers)

;; (semantic-load-enable-guady-code-helpers)

(semantic-load-enable-excessive-code-helpers)

(semantic-load-enable-semantic-debugging-helpers)

(global-srecode-minor-mode 1) ; Enable template insertion menu

(load-file “/usr/share/emacs/site-lisp/xcscope.el”)

(require ‘xcscope)

ps:

1、cscope使用:

生成索引文件

要使用cscope的强大功能,首先需要为我们的代码生成一个cscope数据库。生成数据库很简单,在我们的项目根目录运行下面的运行

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的索引速度

-i: 如果保存文件列表的文件名不是cscope.files时,需要加此选项告诉cscope到哪儿去找源文件列表。可以使用“-”,表示由标准输入获得文件列表。

-I dir: 在-I选项指出的目录中查找头文件

-u: 扫描所有文件,重新生成交叉索引文件

-C: 在搜索时忽略大小写

-P path: 在以相对路径表示的文件前加上的path,这样,你不用切换到你数据库文件所在的目录也可以使用它了

Cscope只在第一次解析时扫描全部文件,以后再调用cscope,它只扫描那些改动过的文件,这大大提高了cscope生成索引的速度。

在缺省情况下,cscope在生成数据库后就会进入它自己的查询界面,我们一般不用这个界面,所以使用了“-b”选项。如果你已经进入了这个界面,按CTRL-D退出。

Cscope在生成数据库中,在你的项目目录中未找到的头文件,会自动到/usr/include目录中查找。如果你想阻止它这样做,使用“-k”选项。

Cscope缺省只解析C文件(.c和.h)、lex文件(.l)和yacc文件(.y),虽然它也可以支持C++以及Java,但它在扫描目录时会跳过C++及Java后缀的文件。如果你希望cscope解析C++或Java文件,需要把这些文件的名字和路径保存在一个名为cscope.files的文件。当cscope发现在当前目录中存在cscope.files时,就会为cscope.files中列出的所有文件生成索引数据库。

find . -name “*.h” -o -name “*.c” -o -name “*.cc” -o -name “*.cpp” -o -name “*.hpp” > cscope.files

cscope -bkq -i cscope.files

在代码中穿梭

查找函数或者变量 c-c s s

查找函数或变量的定义 c-c s g

查找函数在哪里被调用了,c-c s c

查找该函数调用了哪些函数 c-c s C

查找到的函数上次出现的位置 c-c s p

查找到的函数下次出现的位置 c-c s n
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: