问题 Emacs,Cedet和语义


我已经为emacs配置了CEDET Alex文章 (大!!)。 现在,问题:

  1. 我用Gnu Global生成了GTAGS /usr/include,我该如何检查语义是否正在使用GTAGS?
  2. 我可以将我的GTAGS保存在另一个目录中并指示语义使用该目录吗?
  3. 在C / C ++源代码中,在include语句上完成(来自系统 headers)没有列出所有可用的头文件。好的,这是一个愚蠢的 问题..但让我觉得有些事情是行不通的

3415
2018-04-08 14:14


起源



答案:


您可以使用以下命令:

M-x semantic-c-describe-environment RET

了解您的包含路径和CPP宏设置。

要测试GNU Global的使用,您可以使用:

M-x semanticdb-test-gnu-global RET printf RET

在某个项目中搜索“printf”。由于你的项目(可能在/ home / you / myproject中)没有printf,它会失败,但是如果你在/ usr / include中打开一个文件并执行相同的命令,它将有希望识别printf。

询问GNU Global的一般方法是:

M-x cedet-gnu-global-version-check RET

总而言之,GNU Global支持最适合您希望不经常访问的大量预分析文件的情况。一旦访问了一个标题(比如printf),那么将不再使用GNU Global数据库,因为将为它创建一个等效的语义数据库。这是必要的,因为GNU Global没有提供足够的信息来完成智能完成。


16
2018-04-08 21:41