v29.4-roots.3 · Commit 1: [PATCH 01/30] build: port platform and dependency support
doc/build-unix.md
Before: doc/build-unix.md · After: doc/build-unix.md
File metadata
index 9696063cd1d36f79d25fca8c4ce1a84153982075..c4b8e91e83bbe3d3b10980592c8c49ce06a22fa3 100644
Download original patch · Release notes
Diff rows 1–70 of 70. Line numbers refer to the original before/after files.
+ Added− RemovedUnmarked lines are context.
Scroll the code area horizontally to read long lines. Before is on the left; after is on the right. Unified view fits narrow screens more easily.
doc/build-unix.md
CHANGED
|
@@ -64,6 +64,10 @@ executables, which are based on BerkeleyDB 4.8. Otherwise, you can build Berkele
|
|
| 64 |
|
| 65 |
To build Bitcoin Core without wallet, see [*Disable-wallet mode*](#disable-wallet-mode)
|
| 66 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 67 |
ZMQ-enabled binaries are compiled with `-DWITH_ZMQ=ON` and require the following dependency:
|
| 68 |
|
| 69 |
sudo apt-get install libzmq3-dev
|
|
@@ -75,9 +79,10 @@ User-Space, Statically Defined Tracing (USDT) dependencies:
|
|
| 75 |
GUI dependencies:
|
| 76 |
|
| 77 |
Bitcoin Core includes a GUI built with the cross-platform Qt Framework. To compile the GUI, we need to install
|
| 78 |
-
the necessary parts of Qt, the libqrencode and pass `-DBUILD_GUI=ON`. Skip if you don't intend to use the GUI.
|
|
|
|
| 79 |
|
| 80 |
-
sudo apt-get install qtbase5-dev qttools5-dev qttools5-dev-tools
|
| 81 |
|
| 82 |
Additionally, to support Wayland protocol for modern desktop environments:
|
| 83 |
|
|
@@ -89,6 +94,8 @@ The GUI will be able to encode addresses in QR codes unless this feature is expl
|
|
| 89 |
|
| 90 |
Otherwise, if you don't need QR encoding support, use the `-DWITH_QRENCODE=OFF` option to disable this feature in order to compile the GUI.
|
| 91 |
|
|
|
|
|
|
|
| 92 |
|
| 93 |
### Fedora
|
| 94 |
|
|
@@ -112,6 +119,10 @@ are based on Berkeley DB 4.8. Otherwise, you can build Berkeley DB [yourself](#b
|
|
| 112 |
|
| 113 |
To build Bitcoin Core without wallet, see [*Disable-wallet mode*](#disable-wallet-mode)
|
| 114 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 115 |
ZMQ-enabled binaries are compiled with `-DWITH_ZMQ=ON` and require the following dependency:
|
| 116 |
|
| 117 |
sudo dnf install zeromq-devel
|
|
@@ -123,9 +134,10 @@ User-Space, Statically Defined Tracing (USDT) dependencies:
|
|
| 123 |
GUI dependencies:
|
| 124 |
|
| 125 |
Bitcoin Core includes a GUI built with the cross-platform Qt Framework. To compile the GUI, we need to install
|
| 126 |
-
the necessary parts of Qt, the libqrencode and pass `-DBUILD_GUI=ON`. Skip if you don't intend to use the GUI.
|
|
|
|
| 127 |
|
| 128 |
-
sudo dnf install qt5-qttools-devel qt5-qtbase-devel
|
| 129 |
|
| 130 |
Additionally, to support Wayland protocol for modern desktop environments:
|
| 131 |
|
|
@@ -149,7 +161,7 @@ The legacy wallet uses Berkeley DB. To ensure backwards compatibility it is
|
|
| 149 |
recommended to use Berkeley DB 4.8. If you have to build it yourself, and don't
|
| 150 |
want to use any other libraries built in depends, you can do:
|
| 151 |
```bash
|
| 152 |
-
make -C depends NO_BOOST=1 NO_LIBEVENT=1 NO_QT=1 NO_SQLITE=1 NO_ZMQ=1 NO_USDT=1
|
| 153 |
...
|
| 154 |
to: /path/to/bitcoin/depends/x86_64-pc-linux-gnu
|
| 155 |
```
|
|
@@ -179,8 +191,8 @@ Setup and Build Example: Arch Linux
|
|
| 179 |
-----------------------------------
|
| 180 |
This example lists the steps necessary to setup and build a command line only distribution of the latest changes on Arch Linux:
|
| 181 |
|
| 182 |
-
pacman --sync --needed cmake boost gcc git libevent make python sqlite
|
| 183 |
-
git clone https://github.com/bitcoin/bitcoin.git
|
| 184 |
cd bitcoin/
|
| 185 |
cmake -B build
|
| 186 |
cmake --build build
|
|
|
|
| 64 |
|
| 65 |
To build Bitcoin Core without wallet, see [*Disable-wallet mode*](#disable-wallet-mode)
|
| 66 |
|
| 67 |
+
Optional port mapping library (see: `-DWITH_MINIUPNPC=ON`):
|
| 68 |
+
|
| 69 |
+
sudo apt install libminiupnpc-dev
|
| 70 |
+
|
| 71 |
ZMQ-enabled binaries are compiled with `-DWITH_ZMQ=ON` and require the following dependency:
|
| 72 |
|
| 73 |
sudo apt-get install libzmq3-dev
|
|
|
|
| 79 |
GUI dependencies:
|
| 80 |
|
| 81 |
Bitcoin Core includes a GUI built with the cross-platform Qt Framework. To compile the GUI, we need to install
|
| 82 |
+
the necessary parts of Qt and some image processing tools, and pass `-DBUILD_GUI=ON` to cmake.
|
| 83 |
+
Skip if you don't intend to use the GUI.
|
| 84 |
|
| 85 |
+
sudo apt-get install qtbase5-dev qttools5-dev qttools5-dev-tools librsvg2-bin imagemagick
|
| 86 |
|
| 87 |
Additionally, to support Wayland protocol for modern desktop environments:
|
| 88 |
|
|
|
|
| 94 |
|
| 95 |
Otherwise, if you don't need QR encoding support, use the `-DWITH_QRENCODE=OFF` option to disable this feature in order to compile the GUI.
|
| 96 |
|
| 97 |
+
Note: You can also build with Qt 6 (instead of Qt 5) by passing `-DWITH_QT_VERSION=6` to cmake.
|
| 98 |
+
|
| 99 |
|
| 100 |
### Fedora
|
| 101 |
|
|
|
|
| 119 |
|
| 120 |
To build Bitcoin Core without wallet, see [*Disable-wallet mode*](#disable-wallet-mode)
|
| 121 |
|
| 122 |
+
Optional port mapping library (see: `-DWITH_MINIUPNPC=ON`):
|
| 123 |
+
|
| 124 |
+
sudo dnf install miniupnpc-devel
|
| 125 |
+
|
| 126 |
ZMQ-enabled binaries are compiled with `-DWITH_ZMQ=ON` and require the following dependency:
|
| 127 |
|
| 128 |
sudo dnf install zeromq-devel
|
|
|
|
| 134 |
GUI dependencies:
|
| 135 |
|
| 136 |
Bitcoin Core includes a GUI built with the cross-platform Qt Framework. To compile the GUI, we need to install
|
| 137 |
+
the necessary parts of Qt and some image processing tools, and pass `-DBUILD_GUI=ON` to cmake.
|
| 138 |
+
Skip if you don't intend to use the GUI.
|
| 139 |
|
| 140 |
+
sudo dnf install qt5-qttools-devel qt5-qtbase-devel librsvg2-tools ImageMagick
|
| 141 |
|
| 142 |
Additionally, to support Wayland protocol for modern desktop environments:
|
| 143 |
|
|
|
|
| 161 |
recommended to use Berkeley DB 4.8. If you have to build it yourself, and don't
|
| 162 |
want to use any other libraries built in depends, you can do:
|
| 163 |
```bash
|
| 164 |
+
make -C depends NO_BOOST=1 NO_LIBEVENT=1 NO_QT=1 NO_SQLITE=1 NO_UPNP=1 NO_ZMQ=1 NO_USDT=1
|
| 165 |
...
|
| 166 |
to: /path/to/bitcoin/depends/x86_64-pc-linux-gnu
|
| 167 |
```
|
|
|
|
| 191 |
-----------------------------------
|
| 192 |
This example lists the steps necessary to setup and build a command line only distribution of the latest changes on Arch Linux:
|
| 193 |
|
| 194 |
+
pacman --sync --needed cmake boost gcc git libevent make python sqlite librsvg imagemagick
|
| 195 |
+
git clone https://github.com/luganoplanb/bitcoin-roots.git
|
| 196 |
cd bitcoin/
|
| 197 |
cmake -B build
|
| 198 |
cmake --build build
|