NetBSD doc has not seen any meaningful contribution since 2018. This PR intends to update the docs so that one can successfully build on the latest NetBSD release. It also adds dependency information and instructions to build the GUI.
2.7 KiB
NetBSD Build Guide
Updated for NetBSD 9.2.
This guide describes how to build bitcoind, command-line utilities, and GUI on NetBSD.
Preparation
1. Install Required Dependencies
Install the required dependencies the usual way you install software on NetBSD.
The example commands below use pkgin
.
pkgin install autoconf automake libtool pkg-config git gmake boost libevent
NetBSD currently ships with an older version of gcc
than is needed to build. You should upgrade your gcc
and then pass this new version to the configure script.
For example, grab gcc9
:
pkgin install gcc9
Then, when configuring, pass the following:
./configure
...
CC="/usr/pkg/gcc9/bin/gcc" \
CXX="/usr/pkg/gcc9/bin/g++" \
...
See dependencies.md for a complete overview.
2. Clone Bitcoin Repo
Clone the Bitcoin Core repository to a directory. All build scripts and commands will run from this directory.
git clone https://github.com/bitcoin/bitcoin.git
3. Install Optional Dependencies
Wallet Dependencies
It is not necessary to build wallet functionality to run bitcoind or the GUI.
Descriptor Wallet Support
sqlite3
is required to enable support for descriptor wallets.
pkgin install sqlite3
Legacy Wallet Support
db4
is required to enable support for legacy wallets.
pkgin install db4
GUI Dependencies
Bitcoin Core includes a GUI built with the cross-platform Qt Framework. To compile the GUI, we need to install qt5
.
pkgin install qt5
The GUI can encode addresses in a QR Code. To build in QR support for the GUI, install qrencode
.
pkgin install qrencode
Test Suite Dependencies
There is an included test suite that is useful for testing code changes when developing. To run the test suite (recommended), you will need to have Python 3 installed:
pkgin install python37
Building Bitcoin Core
Note: Use gmake
(the non-GNU make
will exit with an error).
1. Configuration
There are many ways to configure Bitcoin Core. Here is an example that explicitly disables the wallet and GUI:
./autogen.sh
./configure --without-wallet --with-gui=no \
CPPFLAGS="-I/usr/pkg/include" \
MAKE=gmake
For a full list of configuration options, see the output of ./configure --help
2. Compile
Build and run the tests:
gmake # use "-j N" here for N parallel jobs
gmake check # Run tests if Python 3 is available