mjw*_*ach 6 precompiled-headers ccache
我的项目有时会受益于ccache,所以我一直在使用ccache.我现在正在添加预编译头文件.一些消息来源表明,这两者是不相容的,必须在它们之间做出选择.但我在ccache的文档中发现它在某种程度上支持PCH:https: //ccache.samba.org/manual.html#_precompiled_headers
实际上,当我尝试使用ccache在使用Clang -include-pch
选项的同时构建.o文件时,我发现ccache正在成功缓存.o.第一次编译尝试需要1.5秒,第二次只需0.05秒(因为ccache完成了它的工作).
麻烦的是,如果我用clang++
而不是with 运行相同的编译命令/usr/lib/ccache/clang++
,则需要0.5秒......除非我离开-include-pch
部分,在这种情况下需要大约1.5秒.似乎ccache可能会导致我的PCH被忽略,或者其他什么.
我按照说明(从上面的链接).正如那里指出的那样,我的ccache.conf看起来像这样:
sloppiness=pch_defines,time_macros
Run Code Online (Sandbox Code Playgroud)
我已经试过的一切合理的组合#include
,-include
,-include-pch
和-fpch-preprocess
我能想到的.编译总是花费1.5秒然后0.05秒,当它应该花费0.5秒,然后0.05秒.
有可能做到这一点,或者我必须在ccache和PCH之间做出选择吗?