Skip to content
Bitcoin Roots

v29.4-roots.1 · Commit 1: [PATCH 01/13] 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. The two line-number columns refer to before and after.

doc/build-unix.md CHANGED
@@ -64,6 +64,10 @@ executables, which are based on BerkeleyDB 4.8. Otherwise, you can build Berkele
64
64
 
65
65
  To build Bitcoin Core without wallet, see [*Disable-wallet mode*](#disable-wallet-mode)
66
66
 
67
+ Optional port mapping library (see: `-DWITH_MINIUPNPC=ON`):
68
+
69
+ sudo apt install libminiupnpc-dev
70
+
67
71
  ZMQ-enabled binaries are compiled with `-DWITH_ZMQ=ON` and require the following dependency:
68
72
 
69
73
  sudo apt-get install libzmq3-dev
@@ -75,9 +79,10 @@ User-Space, Statically Defined Tracing (USDT) dependencies:
75
79
  GUI dependencies:
76
80
 
77
81
  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.
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.
79
84
 
80
- sudo apt-get install qtbase5-dev qttools5-dev qttools5-dev-tools
85
+ sudo apt-get install qtbase5-dev qttools5-dev qttools5-dev-tools librsvg2-bin imagemagick
81
86
 
82
87
  Additionally, to support Wayland protocol for modern desktop environments:
83
88
 
@@ -89,6 +94,8 @@ The GUI will be able to encode addresses in QR codes unless this feature is expl
89
94
 
90
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.
91
96
 
97
+ Note: You can also build with Qt 6 (instead of Qt 5) by passing `-DWITH_QT_VERSION=6` to cmake.
98
+
92
99
 
93
100
  ### Fedora
94
101
 
@@ -112,6 +119,10 @@ are based on Berkeley DB 4.8. Otherwise, you can build Berkeley DB [yourself](#b
112
119
 
113
120
  To build Bitcoin Core without wallet, see [*Disable-wallet mode*](#disable-wallet-mode)
114
121
 
122
+ Optional port mapping library (see: `-DWITH_MINIUPNPC=ON`):
123
+
124
+ sudo dnf install miniupnpc-devel
125
+
115
126
  ZMQ-enabled binaries are compiled with `-DWITH_ZMQ=ON` and require the following dependency:
116
127
 
117
128
  sudo dnf install zeromq-devel
@@ -123,9 +134,10 @@ User-Space, Statically Defined Tracing (USDT) dependencies:
123
134
  GUI dependencies:
124
135
 
125
136
  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.
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.
127
139
 
128
- sudo dnf install qt5-qttools-devel qt5-qtbase-devel
140
+ sudo dnf install qt5-qttools-devel qt5-qtbase-devel librsvg2-tools ImageMagick
129
141
 
130
142
  Additionally, to support Wayland protocol for modern desktop environments:
131
143
 
@@ -149,7 +161,7 @@ The legacy wallet uses Berkeley DB. To ensure backwards compatibility it is
149
161
  recommended to use Berkeley DB 4.8. If you have to build it yourself, and don't
150
162
  want to use any other libraries built in depends, you can do:
151
163
  ```bash
152
- make -C depends NO_BOOST=1 NO_LIBEVENT=1 NO_QT=1 NO_SQLITE=1 NO_ZMQ=1 NO_USDT=1
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
153
165
  ...
154
166
  to: /path/to/bitcoin/depends/x86_64-pc-linux-gnu
155
167
  ```
@@ -179,8 +191,8 @@ Setup and Build Example: Arch Linux
179
191
  -----------------------------------
180
192
  This example lists the steps necessary to setup and build a command line only distribution of the latest changes on Arch Linux:
181
193
 
182
- pacman --sync --needed cmake boost gcc git libevent make python sqlite
183
- git clone https://github.com/bitcoin/bitcoin.git
194
+ pacman --sync --needed cmake boost gcc git libevent make python sqlite librsvg imagemagick
195
+ git clone https://github.com/luganoplanb/bitcoin-roots.git
184
196
  cd bitcoin/
185
197
  cmake -B build
186
198
  cmake --build build