我在 Qt Creator 中遇到代码完成问题。我有一个名为OgreHeaders.h
. 我正在使用 qmake mkspec 与 clang 一起构建unsupported/linux-clang
。我的项目建立了,但是当我编辑它时,我没有得到任何代码提示。我认为这是因为我的预编译头文件是使用-include-pch
编译器选项包含的,而不是#include
指令。所以 Qt Creator 代码模型甚至没有找到它。我有一个关于将标头包装起来的想法,#ifdefs
或者#ifndefs
它会解析它但不会编译。
#ifdef PCH
#include <OgreHeaders.h>
#endif
我需要以某种方式#define PCH
在 Qt Creator 代码模型中,而不是在编译器的代码模型中。或者做相反的事情。我尝试使用QMAKE_CXX_FLAGS
and DEFINES
,但 Qt Creator 选择了它们。
我看到了这篇关于集成的文章。文章底部说:
当您进入“项目”模式时,您将看到一个带有“代码完成设置”的额外选项卡,您可以在其中选择“自定义”标题。选择此选项时,代码模型将使用该标头作为缓存,但编译器不会使用它。
我的 Qt Creator(2.8.0) 中没有该选项。有什么想法可以解决这个问题,或者我需要使用 git 的 clang 集成来构建 Qt Creator?