Skip to main content
Bitcoin Core has several required and optional dependencies that you’ll need to install before building. You can either install these dependencies using your system’s package manager or self-compile them using the depends system in the source repository.

Compiler Requirements

Bitcoin Core requires one of the following compilers:
CompilerMinimum Version
Clang17.0
GCC12.1

Required Dependencies

Build Dependencies

These dependencies are required for all builds:
DependencyMinimum VersionPurpose
Boost1.74.0C++ libraries
CMake3.22Build system
libevent2.1.8Event notification

Runtime Dependencies

DependencyMinimum VersionPurpose
glibc2.31GNU C Library (Linux)

Optional Dependencies

Build Dependencies

DependencyMinimum VersionPurpose
Cap’n Proto0.7.1IPC functionality
Python3.10Scripts and tests
Qt6.2GUI
qrencodeN/AQR code generation (GUI)
SQLite3.7.17Wallet functionality
systemtapN/AUSDT tracing
ZeroMQ4.0.0Notifications

Runtime Dependencies

DependencyMinimum VersionPurpose
Fontconfig2.6Font configuration (GUI)
FreeType2.3.0Font rendering (GUI)

Dependency Installation

Linux/Unix

Install dependencies on Ubuntu, Debian, Fedora, Alpine, and other Linux distributions

macOS

Install dependencies using Homebrew on macOS

Windows

Cross-compile on Linux/WSL using MinGW-w64

BSD

Install dependencies on FreeBSD, OpenBSD, and NetBSD

Using the Depends System

If you prefer to self-compile dependencies instead of using system packages, Bitcoin Core includes a depends system that can build all required dependencies from source. See the README.md in the depends/ directory of the source code for more information.

Build docs developers (and LLMs) love