3.6 KiB
3.6 KiB
Dependencies
These are the dependencies currently used by the Agrarian 2.0 modernization
branch. You can find instructions for installing or building them in the
build-*.md file for your platform. The preferred path is the deterministic
depends/ tree, not mixed system libraries.
| Dependency | Version used | Minimum required | CVEs | Shared | Bundled Qt library |
|---|---|---|---|---|---|
| Berkeley DB | 4.8.30 | 4.8.x | No | ||
| Boost | 1.91.0 | 1.47.0 | No | ||
| Clang | C++17 support | ||||
| D-Bus | 1.10.18 | No | Yes | ||
| Expat | 2.8.0 | Security fixes | Yes | ||
| fontconfig | 2.12.1 | No | Yes | ||
| FreeType | 2.14.3 | Qt 6 static font support | |||
| GCC | C++17 support | ||||
| HarfBuzz-NG | |||||
| libevent | 2.1.12-stable | 2.0.22 | No | ||
| libjpeg | Yes | ||||
| libpng | Yes | ||||
| librsvg | |||||
| MiniUPnPc | 2.0.20180203 | No | |||
| OpenSSL | 3.5.6 | No | |||
| GMP | 6.1.2 | No | |||
| PCRE | Yes | ||||
| protobuf | 2.6.1 | No | |||
| Python (tests) | 3.5 | ||||
| qrencode | 4.1.1 | No | |||
| Qt | 6.8.3 | 6.8 LTS | No | ||
| XCB | Yes (Linux only) | ||||
| xkbcommon | Yes (Linux only) | ||||
| ZeroMQ | 4.3.5 | 4.0.0 | No | ||
| zlib | 1.3.2 | No |
Modernization notes
- Qt builds target Qt 6.8 LTS through the deterministic depends path.
- OpenSSL builds target OpenSSL 3.5 LTS through the deterministic depends path.
- Boost builds target Boost 1.91.0 through the deterministic depends path.
- Berkeley DB remains 4.8.30 in depends for legacy wallet portability. Wallets built against other BDB major versions may not be portable.
Controlling dependencies
Some dependencies are not needed in all configurations. The following are some factors that affect the dependency list.
Options passed to ./configure
- MiniUPnPc is not needed with
--with-miniupnpc=no. - Berkeley DB is not needed with
--disable-wallet. - Qt is not needed with
--without-gui. - If the qrencode dependency is absent, QR support won't be added. To force an error when that happens, pass
--with-qrencode. - ZeroMQ is needed only with the
--with-zmqoption.
Other
- librsvg is only needed if you need to run
make deployon (cross-compilation to) macOS.