如何在cedet下指定不同的源目录?
我已经像这样配置了我的项目:
(when (file-exists-p "~/ws/madwifi/build/Makefile")
(setq cpp-tests-project
(ede-cpp-root-project "madwifi"
:file "~/ws/madwifi/build/Makefile"
:system-include-path '("~/ws/madwifi/build/include/drivers"
"~/ws/madwifi/build/include/hw/"
)
)))
但是当我在符号上执行语义symref符号时,它有时只列出函数 在项目中使用的。变量不是symref'd 但是当我完全删除上面的块时,它只显示变量的引用 从当前目录。如何正确配置ede-cpp-root-project。
答案 0 :(得分:1)
symref工具仅在当前项目中工作,不会从包含路径中提取数据。您可以从包含文件中搜索对符号的引用,但它不会从包含中找到声明。
symref工具可以使用几种不同的外部工具,例如GNU Global或idutils。从理论上讲,您可以使用其中一个工具来索引您想要的任何文件,只要索引文件位于项目的根目录下,它就会找到它,并且还可以找到您的外部包含。我虽然没有试过这个,所以我不知道这些工具是否具备这种功能。
如果要跳转到外部包含中的引用,可以使用其他工具,如semantic-ia-fast-jump,并使用包含路径而不是项目指示,但它不会找到引用。