Skip to content

Conversation

@Kilombino
Copy link

What

Updates the Bitcoin Knots installation guide to use CMake instead of Autotools for versions 29.x and later.

Why

Bitcoin Knots v29.x (following Bitcoin Core) migrated from Autotools to CMake as the build system. The autogen.sh script no longer exists in the source tree, causing installation failures when users follow the current guide. This is a breaking change that prevents users from successfully compiling Bitcoin Knots v29.x and later.

How

  • Added CMake to the required dependencies list
  • Replaced autogen.sh and ./configure steps with CMake configuration commands
  • Updated build commands: mkdir build && cd build, then cmake .. with optimization flags
  • Maintained same optimization level: -DBUILD_BENCH=OFF -DBUILD_TESTS=OFF -DBUILD_GUI=OFF
  • Updated the User Agent modification section with exact commands for the new CMake structure
  • Added clear warnings about UA modification drawbacks
  • Included expected outputs for verification at each step
  • Added version note distinguishing v29.x+ (CMake) from v28.x and earlier (Autotools)

Scope

  • significant change to the final steps of Knots installation
  • independent bonus guide
  • simple bug fix

This is a necessary update to keep the guide functional for current Bitcoin Knots versions.

Test & maintenance

Testing:

  • Successfully compiled and installed Bitcoin Knots v29.2.knots20251010 on Minibolt
  • Verified all commands execute without errors
  • Optional anticensorship changes to bitcoind --version displays Core version to obfuscate Knots information
  • Tested both without UA modification

Maintenance:
This change should remain stable as CMake is now the standard build system for Bitcoin Knots going forward. Future versions (v30.x+) will continue using CMake unless another major migration occurs (unlikely in near term).

I'm willing to update this section if CMake configuration changes in future versions.

Note for v28.x users:
The old Autotools method still works for v28.x and earlier. Consider adding a version selector or note at the beginning if backward compatibility is needed.

Animated GIF (optional)

N/A - Documentation update

- Added CMake to required dependencies
- Replaced autogen.sh/configure with CMake build process
- Added optimized CMake flags matching previous config
- Updated UA modification section with exact commands
Bitcoin Knots v29.x migrated to CMake. The autogen.sh script
no longer exists, breaking previous installation instructions.
Tested on Bitcoin Knots v29.2.knots20251010
- Added -DWITH_ZMQ=ON flag to cmake command
- Ensures ZeroMQ support is explicitly enabled
- Prevents runtime errors related to missing ZMQ functionality
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant