在MacOS X上使用cscope

4
我已经在MacOSX上下载了cscope 15.6。
但是当我尝试在MacOS终端或Tterm中启动它时,向上/向下键不起作用。我无法在cscope界面中从一个查询移动到另一个查询。
只有CTRL-P CTRL-N可以使用。
请问您如何解决我的问题?
谢谢。
3个回答

5

drivel解决了这个bug,你可以参考此链接:http://anylinux.net/post/2453.html

应用以下补丁:

--- src/constants.h.orig    2011-01-09 23:35:35.000000000 +0800
+++ src/constants.h 2011-01-09 23:35:55.000000000 +0800
@@ -103,7 +103,7 @@
 #define INCLUDES   8
 #define    FIELDS      9

-#if (BSD || V9) && !__NetBSD__ && !__FreeBSD__
+#if (BSD || V9) && !__NetBSD__ && !__FreeBSD__ && !__APPLE__
 # define TERMINFO  0   /* no terminfo curses */
 #else
 # define TERMINFO  1

1
我曾经遇到过同样的问题。如果你输入“?”符号,你会得到一个帮助菜单,其中显示按下^N和^P将使光标上下移动。

0
非常奇怪...我在MacOS X 10.5.7上的/usr/bin安装了cscope 15.6 - 这意味着它必须是随Xcode一起安装的(新机器;除非极度挑衅,否则我不会将程序放入/usr/bin)。
既然它能正常工作,那么不使用Xcode版本有什么原因吗?
我的cscope在$中,使用的是/opt/local/bin/cscope;我甚至不记得如何获得那个cscope。请问您能告诉我如何卸载/opt/local/bin/cscope并使用XCode自带的cscope吗?
好的,有很多可能性。第一步是检查您是否有/usr/bin/cscope。假设有,下一步是查看您的PATH变量,并确保/usr/bin出现在/opt/local/bin之前。或者,您可以简单地删除/opt/local/bin/cscope的执行权限,或者将其重命名或删除。(请注意,从程序中删除执行权限有时会使配置脚本混淆 - 我曾经有一个非可执行的/usr/gnu/bin/rm(或类似的实用程序)在我的PATH上,排在/usr/bin/rm之前,这导致了一些问题,直到我将其删除。shell和其他东西没有混淆; 配置脚本混淆了。)
关于相关问题,您能告诉我如何配置现有的XCode项目以与Cscope配合使用吗?如何在XCode中构建CScope数据库?如何在XCode中进行Cscope查询?

很抱歉,你在学习曲线上比我领先...我还没有做足够多的Xcode工作来知道这些问题的答案。我已经安装了它;但我还没有做过什么。我还有一些其他配置问题要先处理(像工作强制要求的电子邮件客户端之类的乏味问题)。


我已经下载了15.6和15.7a两个版本,但在Leopard(10.5.8)上尝试构建时,配置脚本似乎可以工作,但构建会生成错误:
if gcc -DHAVE_CONFIG_H -I. -I. -I..     -g -O2 -MT build.o -MD -MP -MF ".deps/build.Tpo" -c -o build.o build.c; \
    then mv -f ".deps/build.Tpo" ".deps/build.Po"; else rm -f ".deps/build.Tpo"; exit 1; fi
In file included from build.c:50:
/usr/include/ncurses.h:550:40: error: macro "cbreak" passed 1 arguments, but takes just 0
/usr/include/ncurses.h:575:44: error: macro "erasechar" passed 1 arguments, but takes just 0
/usr/include/ncurses.h:611:43: error: macro "killchar" passed 1 arguments, but takes just 0
make[2]: *** [build.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

这个 bug 也被其他人报告给了 SourceForge 上的 cscope 项目,声称操作系统为 Snow Leopard(因此实际上至少有两个版本存在问题——Leopard 的后续版本和 Snow Leopard)。

我的cscope在哪里?$ which cscope /opt/local/bin/cscope我甚至不记得我是如何获得这个cscope的。 请问您能告诉我如何卸载/opt/local/bin/cscope并使用XCode中的那个吗?谢谢 - n179911
关于相关问题,您能告诉我如何配置我的现有XCode项目以与Cscope一起使用吗?我该如何在XCode中构建CScope数据库?以及我该如何在XCode中进行Cscope查询?谢谢。 - n179911
一般情况下,/opt/local/bin由MacPorts管理,因此只需执行"port uninstall cscope"即可。 - Nicholas Riley
1
现在,在SourceForge的cscope项目中提供了一个解决与/usr/include/ncurses.h相关错误的方法。您可以访问http://sourceforge.net/tracker/?func=detail&aid=2906214&group_id=4664&atid=204664查看。 - abigagli

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接