CEDET不能使用GNU Global for Symref

时间:2014-04-16 03:51:22

标签: emacs cedet

我已经启用了GNU Global数据库:

(setq cedet-global-command "global")
(when (cedet-gnu-global-version-check t)
  (semanticdb-enable-gnu-global-databases 'c-mode t)
  (semanticdb-enable-gnu-global-databases 'c++-mode t))

cedet-gnu-global-version-check显示正确的版本和cedet-gnu-global-show-root跳转以更正项目根目录。但是,根据Eric在这里的回答:How can I tell if CEDET is using GNU Global?,评估(semantic-symref-detect-symref-tool)总是给我grep,即使CEDET认可GNU Global版本。

如何真正使CEDET能够使用GNU Global?

编辑:我必须强迫CEDET使用GNU Global:

(setq-default semantic-symref-tool "global")

不确定这是否是一种正确的设置方式,但目前这是我的解决方法,使CEDET使用GNU Global。或者(semantic-symref-detect-symref-tool)可能有错误吗?

1 个答案:

答案 0 :(得分:3)

在您的修改中,将semantic-symref-tool设置为“全局”是开始使用它的好方法。

如果项目的根目录中有GPATH文件,则检测机制(默认)将尝试使用全局。项目的根目录是通过EDE或当前目录识别的。因此,如果您在~/myproj中有一些项目,但GPATH位于~/myproj/src,则会错过。