GNU Global和GTAGS可以';找不到类定义
我在全局查找类/结构定义时遇到问题。 我可以用丰富的CTAG和cscope找到它们。 所有标记文件都是从同一源文件列表生成的。 我配置并构建了global等,只指定了--prefix。 configure确实找到了exhuberant并正在使用它。 这些年来,我一直在周期性地尝试全球化,但它总是有这个问题。 有什么想法吗 谢谢,GNU Global和GTAGS可以';找不到类定义,tags,gnu,gnu-global,Tags,Gnu,Gnu Global,我在全局查找类/结构定义时遇到问题。 我可以用丰富的CTAG和cscope找到它们。 所有标记文件都是从同一源文件列表生成的。 我配置并构建了global等,只指定了--prefix。 configure确实找到了exhuberant并正在使用它。 这些年来,我一直在周期性地尝试全球化,但它总是有这个问题。 有什么想法吗 谢谢, 达维普我已经发现我做错了什么。也许这会对某人有所帮助 仅仅因为configure发现了丰富的ctag,并不意味着它就成为了默认的解析器。我以前的ctags不支持gtag
达维普我已经发现我做错了什么。也许这会对某人有所帮助
default:\
:tc=native:
to
default:\
:tc=ctags:
2) 如果没有丰富的CTAG,请编辑.globalrc并将内置解析器的langmap行从
builtin-parser:\
:langmap=c\:.c.h,yacc\:.y,asm\:.s.S,java\:.java,cpp\:.c++.cc.hh.cpp.cxx.hxx.hpp.C.H,php\:.php.php3.phtml:
to
builtin-parser:\
:langmap=c\:.c,yacc\:.y,asm\:.s.S,java\:.java,cpp\:.c++.cc.hh.h.cpp.cxx.hxx.hpp.C.H,php\:.php.php3.phtml:
即删除H与C的关联,并将其与C++关联。 这可能会导致C.h文件出现问题。如果是这样,您可能需要将所有C++ +h文件重命名为.Hh、.HPP、.HXX等,如在LangMalp中给出的。
根据我在C++中的经验,看起来大多数人仍然使用.h作为头文件。< p>只导出这个变量,这应该是非常有用的。从gtags的手册页
GTAGSFORCECPP
如果设置了这个变量,每个文件的后缀为“H”都被视为C++源文件。
我发现当我用默认值替换内置解析器时,它可以工作: