cscope在windows下使用mingw编译的方法

 
 
cscope在windows下使用mingw编译的方法


编译好的 cscope15.6-win32 在这里下载:
http://linux.chinaunix.net/bbs/attachment.php?aid=177425
作者: 刘凯 mslk.sa@gmail.com
关键字:cscope.exe,cscope15.6.exe, cscope windows,cscope win32,cscope mingw,修改编译cscope
摘要:使用
mingw 编译 cscope win32 native 的方法,本文以 cscope 最新版本 15.6 20060930 )为例。
 
因为最近想看一个大项目的源代码,两年前就知道 cscope是个比较适合的辅助工具,当时看到cscope15.5是2003年的版本,觉得好久不更新太老了就没有用,今天看到了新版本15.6(20060930)还算比较新,就决定试试它到底有多爽。
在网上找了一下,发现 windows下的版本都是很久以前的,就只好自己编译了。
下面说说我编译的方法:
一、下载安装 gcc和一些必须的工具   
  cscope.sf.net
下载最新的cscope-15.6.tar.gz   
    www.mingw.org 上的gcc编译器工具集、bash3.1都要搞下来。
    gunwin32.sf.net 上的bison,flex,m4,make,PcRe,PdCurses,……
二、修改源代码
在 cmd窗口中进入cscope-15.6的目录执行:
1、  sh configure –build=mingw32
需要等几分钟,在最后能看到信息: config.status: creating src/Makefile 就行了 
1、  进入 src 目录
2、  打开编辑 global.h ,在文件最后 #endif /* CSCOPE_GLOBAL_H */ 的前面,加上两行:
#define __DJGPP__
#define __MSDOS__
3、  打开编辑 exec.c ,注释掉41行: //#include <sys/wait.h>
4、  打开编辑 mypopen.c ,注释掉37行: //#include <sys/wait.h>
注释掉84、85行:
//if(fd != -1 && (fcntl(fd, F_SETFD, CLOSE_ON_EXEC) != -1))
//return(fd);
5、  打开编辑 find.c ,注释掉1160行: //(void) sleep(3);
6、  打开编辑 main.c
修改360行 orig_umask = umask(S_IRWXG|S_IRWXO); 为:
orig_umask = umask(S_IRWXU);
修改363行 if(mkdir(tempdirpv,S_IRWXU)) { 为:
     if(mkdir(tempdirpv)) {
注释掉378行: //signal(SIGQUIT, myexit);
注释掉381行: //signal(SIGHUP, myexit);
注释掉404行: //signal(SIGPIPE, SIG_IGN);/* | command can cause pipe signal */
修改895行 if (sig == SIGQUIT) { 为:
     if (sig == SIGTERM ||
    sig == SIGABRT ||
    sig == SIGBREAK){
修改175行 fprintf(stderr, "%s: version %d%s/n", argv0, 为:
        fprintf(stderr, "%s: version %d%s./tCompiled by MSLK/n", argv0,
7、  打开编辑 Makefile
修改133行 CURSES_LIBS = -lcurses 为:
     CURSES_LIBS = -lpdcurses –lpcre
三、 编译cscope,在 cmd窗口中进入cscope-15.6/src的目录执行
make –k
    cscope –V  瞧一下自己编译的最新版本,很爽吧。 
四、后记
cscope 配合emacs试了一下,要把 cscope-15.6/contrib/xcscope/ xcscope.el 放入 emacs/site-lisp 中, /M+x: cscope-find-this-symbol 确实挺不错的,   比ctags的功能强多了,特别是多处出现时找着比/M+,、/M+.方便多了。
    cscope –h  可以看看帮助学习学习。

 


编译好的cscope15.6-win32在这里下载:
http://linux.chinaunix.net/bbs/attachment.php?aid=177425

http://sourceforge.net/project/showfiles.php?group_id=196604

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值