BuildCache
BuildCache is a free, open-source tool that caches build results so projects can reuse them instead of recompiling unnecessarily.
What BuildCache is
BuildCache is a free, open-source tool that caches build results so projects can reuse them instead of recompiling unnecessarily. Its fast local filesystem cache supports both preprocessor-based and preprocessorless lookup, and an optional remote shared server can serve as a second-level cache. Compression options include LZ4 and, optionally, ZSTD. The project lists built-in support for GCC, Clang, Microsoft Visual C++, clang-cl, QNX qcc, Green Hills and TI compilers, along with scan-build, Cppcheck and rustc. Clang-Tidy appears as an example Lua wrapper; custom Lua scripts can extend compiler support. BuildCache can also cache reproducible artifacts such as test results and rendered images. It supports CMake, MSBuild/Visual Studio and Cargo, and runs on Linux, macOS and Windows. The project says pre-built binaries are available, though it notes that configuration parameters and cache formats may change between 0.x versions while development continues. BSD systems may work, but are untested. The project says it has been used daily in production environments for years with near-zero issues.
Good
- Free and open source
- Offers local and optional shared caching
- Supports CMake, MSBuild/Visual Studio and Cargo
- Lua scripts can extend compiler support
Watch out
- Configuration and cache formats may change in 0.x versions
- BSD support is untested
Who it suits
BuildCache may suit developers whose compiler and build system are among those listed, and who want local or shared build-result caching. It can be run on Linux, macOS or Windows.
Verdict
BuildCache offers local caching with an optional shared second level and support for a broad set of listed toolchains. Its ongoing 0.x development means users should account for possible changes to settings and cache formats.
The facts
Each one read from BuildCache's own pages, with the date it was checked.
What it does
- Built-in compiler support
- The README lists built-in support for GCC, Clang, Microsoft Visual C++, clang-cl, QNX qcc, Green Hills and TI compilers, scan-build, Cppcheck, and rustc.checked 7 Oct 2026
- Cache modes
- It supports a fast local filesystem cache with preprocessor-based and preprocessorless lookup.checked 8 Oct 2026
- Clang-Tidy
- Clang-Tidy is listed as a Lua example wrapper.checked 7 Oct 2026
- Compiler support
- Built-in support includes GCC, Clang, Microsoft Visual C++, clang-cl, QNX qcc, Green Hills, several TI compilers, scan-build, Cppcheck, and rustc; Clang-Tidy is shown as a Lua example.checked 8 Oct 2026
- Compression
- Cache compression uses LZ4 or optionally ZSTD.checked 8 Oct 2026
- Development status
- The project says it is still under development and configuration parameters and cache formats may change between 0.x versions.checked 8 Oct 2026
- Downloads
- The README links to prebuilt binaries on the project’s latest releases page.checked 8 Oct 2026
- Extensibility
- Custom Lua scripts can extend compiler support, and BuildCache can cache reproducible artifacts such as test results and rendered images.checked 8 Oct 2026
- License
- The project is licensed under the zlib License.checked 8 Oct 2026
- Local cache
- It provides a fast local file system cache with preprocessor-based and preprocessorless cache lookup.checked 7 Oct 2026
- Operating systems
- The README lists Linux, macOS, and Windows as supported operating systems, and says BSD support is probable but untested.checked 7 Oct 2026
- Production use
- The project says BuildCache has been used daily in production environments for years with near zero issues.checked 8 Oct 2026
- Project creation
- The GitLab project page says it was created on September 7, 2023.checked 8 Oct 2026
- Purpose
- BuildCache caches and reuses build results to avoid unnecessary recompilations and speed up builds.checked 8 Oct 2026
- Remote cache
- It can optionally use a remote shared server as a second-level cache.checked 7 Oct 2026
- Shared cache
- It can optionally use a remote shared server as a second-level cache.checked 8 Oct 2026
- Supported systems
- The README lists Linux, macOS, and Windows, and says most BSD systems may work but are untested.checked 8 Oct 2026





