CodeChecker vs Infer
CodeChecker
codechecker.readthedocs.ioInfer
fbinfer.comSide by side
| Figure | CodeChecker | Infer |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | Yes |
| Windows | Yes | — |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | Yes | Yes |
| Plans published | 0 | 1 |
| Spec score · C and C++ Static Analysis Tools | 7.5 (#14) | 8.5 (#5) |
| Spec score · Static Analysis Tools | 7.5 (#22) | 8.6 (#7) |
| Deployment | The web server can be deployed using Docker, and the documentation links to a CodeChecker server container on Docker Hub. | Infer runs in Meta's continuous-integration pipeline to verify select properties of code modifications for projects including Facebook, Messenger, Instagram, and WhatsApp. |
| Integrations | The documentation describes Gerrit and GitLab review integrations and a reusable GitHub Actions workflow. | Infer documents integrations for Buck, cmake, Gradle, Make, Maven, Xcodebuild, xctool, and compilation databases. |
| Purpose | CodeChecker is static analysis infrastructure built on the LLVM/Clang Static Analyzer toolchain. | Infer is a static analysis tool that produces a list of potential bugs from Java or C/C++/Objective-C code. |
Plans
In their own words
CodeChecker
CodeChecker is free, open-source static-analysis infrastructure built on LLVM and Clang Static Analyzer tooling. Its command-line tools run supported analyzers against a JSON compilation database and generate reports. The web interface stores, filters, compares, and visualizes findings, including code bug paths, while reviewers can comment and set status. Reanalysis can be limited to changed files and their dependencies. Listed language coverage includes C/C++, C#, Java, Python, JavaScript, TypeScript, Go, and Markdown. Integrations cover Gerrit, GitLab, and a reusable GitHub Actions workflow. A Visual Studio Code extension runs analysis, reanalyzes saved files, and browses reports. Servers can run locally or in Docker, with PostgreSQL or SQLite storage and configurable authentication. CodeChecker requires Python 3.11 or later.
Infer
Infer is a static analysis tool that examines compiled Java, C, C++, Objective-C, and Erlang code and reports potential bugs before release. Its checks include null pointer problems, resource or memory leaks, coding conventions, unavailable APIs, and concurrency issues such as data races. Some analyses can follow an issue across multiple functions or methods and files. Pulse provides memory-safety analysis, while RacerD checks thread safety. Cost analysis estimates asymptotic function complexity for Java and C-family languages; Hack support is experimental, and Python, Rust, and Swift are not supported by that analysis. Infer captures compilation commands, analyzes the captured files, and writes reports that can be reviewed with `infer explore`; files that are not compiled are not analyzed. Integrations are documented for build tools including Buck, CMake, Gradle, Make, Maven, Xcodebuild, and xctool. It can be installed from binary releases, built from source, or run in Docker. The free plan costs nothing. Infer runs on Linux and macOS, with web and self-hosted options; Windows is not supported.