1

我在 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_FLAGSand DEFINES,但 Qt Creator 选择了它们。

我看到了这篇关于集成的文章。文章底部说:

当您进入“项目”模式时,您将看到一个带有“代码完成设置”的额外选项卡,您可以在其中选择“自定义”标题。选择此选项时,代码模型将使用该标头作为缓存,但编译器不会使用它。

我的 Qt Creator(2.8.0) 中没有该选项。有什么想法可以解决这个问题,或者我需要使用 git 的 clang 集成来构建 Qt Creator?

4

1 回答 1

0

把任何一个

#define PCH

或者

#undef PCH

PROJECT_NAME.config在项目的根目录中归档,其中是PROJECT_NAMEQt Creator 中项目的名称——就像PROJECT_NAME.filesPROJECT_NAME.includes.

于 2013-08-29T10:10:06.230 回答