Ccache

Joel Rosdahl·Ccache.Ccache

Ccache is a compiler cache. It speeds up recompilation by caching previous compilations and detecting when the same compilation is being done again.

Ccache is a compiler cache. It speeds up recompilation by caching previous compilations and detecting when the same compilation is being done again. Ccache is free software, released under the GNU General Public License version 3 or later.

winget install --id Ccache.Ccache --exact --source winget

Latest 4.14·August 23, 2026

Release Notes

Deprecation notice Built-in support for the HTTP and Redis protocols will be removed in the next non-bug-fix ccache version. Use the remote storage helper mechanism (added in ccache 4.13) for HTTP/Redis storage instead.

Removed functionality

  • Removed the cpp_extension (CCACHE_EXTENSION) configuration option since ccache now processes preprocessor output directly in memory instead of using intermediate files. [contributed by Joel Rosdahl]

New features and improvements

  • Added support for the QCC (QNX) compiler. [contributed by Joy Wang]
  • Added limited support for caching SARIF diagnostics: -fdiagnostics-format=sarif-stderr and -fdiagnostics-{add,set}-output=sarif:file=… for GCC, /experimental:log for MSVC. [contributed by Joel Rosdahl, Karl Fessel and Leander Schulten]
  • Added automatic depend mode for NVCC on Windows. [contributed by Xing Xiwen]
  • Added support for @layout=local in the file storage backend, allowing a copy or read-only mount of a local cache to be used as remote storage. [contributed by Joel Rosdahl]
  • Extended the remote storage helper protocol with an exists operation, avoiding transfer of already stored values in reshare mode, and an info operation for reporting the helper’s identity and diagnostics. [contributed by Joel Rosdahl]
  • Added a --dry-run option for previewing cleanup, eviction and directory trimming operations without removing files. [contributed by Joel Rosdahl]
  • Added support for rewriting absolute profile data file paths to relative, improving cache sharing between different directory trees. [contributed by GitHub user markyang92]
  • Added support for reflinking .dwo files when file cloning is enabled. [contributed by Fabian Parzefall]
  • Added detection of C23 #embed directives in direct and depend mode and of assembler .incbin directives in depend mode, preventing false cache hits. [contributed by Joel Rosdahl and Haaris Rahman]
  • Added support for -Wp, options with multiple macro definitions. [contributed by GitHub user subotac]
  • Ccache now hashes the contents of Clang module files specified with -fmodule-file=, preventing false cache hits when a module changes. [contributed by GitHub user RedNicStone]
  • Cleanup and eviction operations now print the amount of data and number of files removed. [contributed by Joel Rosdahl]
  • Increased the maximum number of raw files stored in a cached result to 256. [contributed by Joel Rosdahl]
  • Modernized use of C++ type traits. [contributed by Gregor Jasny]
  • Improved portability of compiler exit status handling. [contributed by Joel Rosdahl]
  • Made path rewriting on Windows case-insensitive and Unicode-aware. [contributed by Joel Rosdahl]
  • Made ignore_headers_in_manifest match case-insensitively on Windows. [contributed by GitHub user trustytrojan]
  • Reduced the number of system calls for IPC requests. [contributed by Joel Rosdahl]

Bug fixes

  • Fixed base_dir path rewriting when using MSVC’s /Yu option: paths are no longer rewritten to relative when using a precompiled header, since MSVC then does not like relative paths for the /Yu and /FI arguments. [contributed by Joel Rosdahl]
  • Fixed handling of compiler options when one recognized option is a prefix of another. [contributed by Joel Rosdahl]
  • Fixed base_dir handling for include paths in preprocessor mode (regression in ccache 4.12.2). [contributed by Joel Rosdahl]
  • Fixed handling of Clang 22’s --warning-suppression-mappings option. [contributed by Joel Rosdahl]

Installer type: zip

x64—2568347A697E103CA1B073981C704AD76FB2507D066C38DBA038DD73399D968F
arm64—BAA07085F68F75EA033D6F8D8FE6B53B7F353050BD191E299FF27E131CC3D787

Details

Homepage
https://github.com/ccache/ccache
License
GPL-3.0
Publisher
Joel Rosdahl
Support
https://github.com/ccache/ccache/discussions
Moniker
ccache

Tags

cc++ccachecompilationcross-platformopen-sourceoptimizationspeedup

Older versions (19)

4.13.6
x64—3D7CEBB05850AD704E197B3F1D3F0F924AB6C9FDFC561578E146184FE9D89380
arm64—BEC01846B06D6D87BF35EDA50544D7C8BF9B9A4859F218417A7081AA45D7FD47
4.13.5
x64—6685AA505F0A95A3A6D8B6C1B6FAB1DEFF29628E44DED4A5760E4EFE1742A736
arm64—132FCDD2249F2EBC3DC7FDE5AC65A44643FDE07D3D55CD4DFB3364FB689C63C2
4.13.4
x64—12E8958EF3FC1FECCEB650D46E4DB5D0855C778312C70EEDD3A2DA344FD0A698
arm64—8244297FBB8130E376B7E6242D30E5D92D498EBAAEC7C993366444AB94427C36
4.13.3
x64—F445BF8A01D056461A8CE55972CF36D01D5BA009656D7E935D06C5A36927311E
arm64—2F1650F2921DB31B981F73282E1BB209142F139C3AEEBDC3E03EC7903AE77A04
4.13.2
x64—6FD36619985B36DA4D765851DBA9F1BAECB0539394330693D146B86D37FE8683
arm64—7D443854A4D818313AD5F0EFF5F71BBAD85F271978C58F63D27296D8B61FB577
4.13.1
x64—1C78A0B816A3174D4B170B96294E016A21FB4A577DFD8361E7322F77F85C6348
arm64—5907C8F74DCFFF920EE57DF55A5CB98164630665926B2BA9085E9F5FB701C58F
4.13
x64—E0FD1197FE979E9C8CD44A418A67EF4076D788806389F37AB4601C32AC8BA753
arm64—9D3030850F8B933A814B5BAFD5168026EF606E4BEFBB1868E659336B2DAE4C55
4.12.3
x86—ED9624055CCF06854CEFCC521611CE5944ED41F5DDDA558995868A37B5174396
x64—859141059AC950E1E8CD042C66F842F26B9E3A62A1669A69FE6BA180CB58BBDF
4.12.2
x86—0CF9AE22C358B37ED41DC44705008A2CC7A2837FC08E51821ACF399B9D673A83
x64—82C1B130B25CC162531DC7A062DC5EA99349CD536BC9EBA8A66D976802D66516
4.12.1
x86—2012B76631366DDED52C3A983D8BDA154DD76BADB05BD6D8CDE63E184CD5538A
x64—98AEA520D66905B8BA7A8E648A4CC0CA941D5E119D441F1E879A4A9045BF18F6
4.12
x86—C046AD7159D312312662C380DA5932D441407F56164E451B09C16DAD8DB01051
x64—85C963B154DCF5E38DC6839D660218433A3B0B86387C302675D236E17AE7220D
4.11.3
x86—AD0248EDCCE9959FE4075DDC41496A099366B0C785AEE062A8D59D26C1385178
x64—BFD031CAD091B7DB7E68C3303BE542B0F7FEE7A3E716D76EC6F7E6C7EF4B3526
4.11.2
x86—35F24ADCFF64A95A99EAFCFE5B0A0A4C69FBA950825091BA82A9984D90EBAE84
x64—1F39F3AD5AAE3FE915E99AD1302633BC8F6718E58FA7C0DE2B0BA7E080F0F08C
4.11.1
x86—BAB075A6B96CD8675164B2BDC1104021E1F1FECDA21C53B7FF56545842B112B4
x64—1FCCFFF3D22DC05BAD61073FE050398BA8CD99395DD21D0EA1397B96FA2B508E
4.11.0
x86—D0D84BCDA3FC32F1F898AA24249C646F553CE4C6A329A99D4D364532F5D6A590
x64—47BBEEFC588EC3DE4EF6E5006FEB11771BFE3B30380FACF24605352B2D6EC04D
4.10.2
x86—30BD081F45F92AFFE74B776F19B8872A09B6B5DF3EC6C43C552863D73C804871
x64—6252F081876A9A9F700FAE13A5AEC5D0D486B28261D7F1F72AC11C7AD9DF4DA9
4.10.1
x86—BFBA3FB4BE293DE5C2BE5990E2DC44DA2CD863CACF9739B4ACDFFA23CA7A5E67
x64—06B26CCE440F54B9EFFD7766075F05C4EC051859BD24B9969CAB66855BF07DFB
4.10
x64—B62CEF76EDB9EC74A9E27D15A3B045D83E80F5BDB7DEBC6CBEA6D617971CC6ED
x86—580457ADD282B6A36A987E4CD8C17D02D094AF356E46954388A132AB714C259A
4.9.1
x64—D0836518CFDB74CC765A6BC6C353009367D8FC15DBBEC4899EBDBEB750A07F77
x86—3E40644FEE4A1FE5DAD135C36DA180C1C0EAEDF41BF86D483C4C5FFAC7DE5E93