3 ms·
I typically use ccache on Linux, which does the headline feature of this. If there's a Zapcc rep here, how does Zapcc compare? Is the precompiled header feature
by EliRivers 11y ago
I typically use ccache on Linux, which does the headline feature of this. If there's a Zapcc rep here, how does Zapcc compare? Is the precompiled header feature a big improvement?
- gilgoomesh 11y agoI don't know anything specific about zapcc but based on the numbers here: http://www.zapcc.com/case-studies/compiling-boost/ http://www.zapcc.com/case-studies/compiling-boost/ even their first compilation (the one you still need to perform when using ccache) is twice as fast as GCC. In any case, I think the primary audience for this is people using clang, not GCC.
- yrnkrn 11y agoYou are correct, zapcc should be compared only to clang from the same svn. clang to gcc is another matter altogether. Even in first compilation, zapcc will cache between the first and second files compiled. The only case where there is no caching is when zapccs starts or re-startes, for example when compilation flags are changed.
- kazinator 11y agoccache doesn't speed up your compile time; it avoids compiling when that is possible. Avoiding compiling is not possible when you've changed files and need them recompiled. In that case, a ccache build proceeds using the usual compiler command line. Also, ccache generates the preprocessor output, even in those cases when it deduces that compiling is unnecessary (and just pulls out a previously made object file). It makes that deduction based on the hash over the preprocessor output.
- EliRivers 11y agoThe headline feature to which I referred, from http://www.zapcc.com/product/features/ http://www.zapcc.com/product/features/, is "Zapcc caches compiled headers and generated code between compiles". So a cache of what was generated last time, which will have to be replaced if the input files or compile command changes. So, a lot like ccache. Which is why I asked.
- deleted 11y ago[deleted]