Inside Bitcoin
Opening the selected file…
Inside Bitcoin
Opening the selected file…
The code behind the network, with room to understand it.
Release published 2026-10-28 · Snapshot fetched 2026-11-01. Latest stable release at fetch time; development branches and Git history are excluded. Only the selected code window and visible folders load here.
1#!/usr/bin/env bash2# Copyright (c) The Bitcoin Core developers3# Distributed under the MIT software license, see the accompanying4# file COPYING or https://opensource.org/license/mit.5export LC_ALL=C.UTF-86set -o errexit -o pipefail8# shellcheck source=setup.sh9source "$(dirname "${BASH_SOURCE[0]}")/setup.sh"11# setup gcc toolchain12gcc_toolchain14BASE_CACHE="${BASE_CACHE:-$PWD/depends/built}/GUIX/BUILD"16# Build the depends tree17make -C depends --jobs="$JOBS" HOST="$HOST" \18${V:+V=1} \19${SOURCES_PATH+SOURCES_PATH="$SOURCES_PATH"} \20${BASE_CACHE+BASE_CACHE="$BASE_CACHE"} \21${build_CC+build_CC="$build_CC"} \22${build_CXX+build_CXX="$build_CXX"} \23NO_QT=125# CFLAGS26HOST_CFLAGS="-O2 -g"27HOST_CFLAGS+=$(find /gnu/store -maxdepth 1 -mindepth 1 -type d -exec echo -n " -ffile-prefix-map={}=/usr" \;)28HOST_CFLAGS+=" -fdebug-prefix-map=${DISTSRC}/src=."30# CXXFLAGS31HOST_CXXFLAGS="$HOST_CFLAGS"33case "$HOST" in34arm-linux-gnueabihf) HOST_CXXFLAGS="${HOST_CXXFLAGS} -Wno-psabi" ;;35esac37# LDFLAGS38HOST_LDFLAGS="-Wl,--as-needed -Wl,--dynamic-linker=$(glibc_dynamic_linker "$HOST") -Wl,-O2"40# Use LINK_WARNING_AS_ERROR when using CMake 4.x41case "$HOST" in42riscv64-linux-gnu) ;; # https://github.com/boostorg/test/issues/34543*) HOST_LDFLAGS="${HOST_LDFLAGS} -Wl,--fatal-warnings" ;;44esac46mkdir -p "$DISTSRC"47(48cd "$DISTSRC"50# Extract the source tarball51tar --strip-components=1 -xf "${GIT_ARCHIVE}"53# Configure this DISTSRC for $HOST54env CFLAGS="${HOST_CFLAGS}" CXXFLAGS="${HOST_CXXFLAGS}" LDFLAGS="${HOST_LDFLAGS}" \55cmake -S . -B build \56--toolchain "${BASEPREFIX}/${HOST}/toolchain.cmake" \57-DBUILD_BENCH=OFF \58-DBUILD_FUZZ_BINARY=OFF \59-DBUILD_GUI=OFF \60-DBUILD_GUI_TESTS=OFF \61-DCMAKE_EXE_LINKER_FLAGS="${HOST_LDFLAGS} -static-libstdc++ -static-libgcc" \62-DCMAKE_INSTALL_PREFIX="${INSTALLPATH}" \63-DCMAKE_SKIP_RPATH=TRUE \64-DREDUCE_EXPORTS=ON \65-DWITH_CCACHE=OFF67# Build Bitcoin Core68cmake --build build -j "$JOBS"70# Install built Bitcoin Core71cmake --install build72)74rm -rf "$DISTSRC"/build76exit 0
Independent explanations by MyBitcoinExplorer. Not affiliated with or endorsed by Bitcoin Core. Guides are educational and do not replace the source or its tests.
Bitcoin Core source © its contributors, distributed under the MIT license. Original notices and bundled third-party licenses are retained in the source tree.