aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/README.md1
-rw-r--r--doc/build-openbsd.md4
-rw-r--r--doc/build-osx.md2
-rw-r--r--doc/build-unix.md2
-rw-r--r--doc/build-windows.md2
-rw-r--r--doc/dependencies.md32
6 files changed, 40 insertions, 3 deletions
diff --git a/doc/README.md b/doc/README.md
index 275ae67e54..988019869e 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -37,6 +37,7 @@ Building
---------------------
The following are developer notes on how to build Bitcoin on your native platform. They are not complete guides, but include notes on the necessary libraries, compile flags, etc.
+- [Dependencies](dependencies.md)
- [OS X Build Notes](build-osx.md)
- [Unix Build Notes](build-unix.md)
- [Windows Build Notes](build-windows.md)
diff --git a/doc/build-openbsd.md b/doc/build-openbsd.md
index f4a9826d80..dc1ba6e115 100644
--- a/doc/build-openbsd.md
+++ b/doc/build-openbsd.md
@@ -18,12 +18,12 @@ pkg_add automake # (select highest version, e.g. 1.15)
pkg_add python # (select highest version, e.g. 3.5)
```
-The default C++ compiler that comes with OpenBSD 5.9 is g++ 4.2. This version is old (from 2007), and is not able to compile the current version of Bitcoin Core, primarily as it has no C++11 support, but even before there were issues. So here we will be installing a newer compiler.
+See [dependencies.md](dependencies.md) for a complete overview.
GCC
-------
-You can install a newer version of gcc with:
+The default C++ compiler that comes with OpenBSD 5.9 is g++ 4.2. This version is old (from 2007), and is not able to compile the current version of Bitcoin Core, primarily as it has no C++11 support, but even before there were issues. So here we will be installing a newer compiler:
```bash
pkg_add g++ # (select newest 4.x version, e.g. 4.9.3)
diff --git a/doc/build-osx.md b/doc/build-osx.md
index 32d7dbd69e..86c8f22555 100644
--- a/doc/build-osx.md
+++ b/doc/build-osx.md
@@ -18,6 +18,8 @@ Dependencies
brew install automake berkeley-db4 libtool boost --c++11 miniupnpc openssl pkg-config protobuf qt libevent
+See [dependencies.md](dependencies.md) for a complete overview.
+
If you want to build the disk image with `make deploy` (.dmg / optional), you need RSVG
brew install librsvg
diff --git a/doc/build-unix.md b/doc/build-unix.md
index b7eae2a630..5d281c6ae2 100644
--- a/doc/build-unix.md
+++ b/doc/build-unix.md
@@ -49,7 +49,7 @@ Optional dependencies:
univalue | Utility | JSON parsing and encoding (bundled version will be used unless --with-system-univalue passed to configure)
libzmq3 | ZMQ notification | Optional, allows generating ZMQ notifications (requires ZMQ version >= 4.x)
-For the versions used in the release, see [release-process.md](release-process.md) under *Fetch and build inputs*.
+For the versions used, see [dependencies.md](dependencies.md)
Memory Requirements
--------------------
diff --git a/doc/build-windows.md b/doc/build-windows.md
index 9549a4b9da..2b1e0b5ae7 100644
--- a/doc/build-windows.md
+++ b/doc/build-windows.md
@@ -59,6 +59,8 @@ A host toolchain (`build-essential`) is necessary because some dependency
packages (such as `protobuf`) need to build host utilities that are used in the
build process.
+See also: [dependencies.md](dependencies.md).
+
## Building for 64-bit Windows
To build executables for Windows 64-bit, install the following dependencies:
diff --git a/doc/dependencies.md b/doc/dependencies.md
new file mode 100644
index 0000000000..2574d8bb06
--- /dev/null
+++ b/doc/dependencies.md
@@ -0,0 +1,32 @@
+Dependencies
+============
+
+These are the dependencies currently used by Bitcoin Core. You can find instructions for installing them in the `build-*.md` file for your platform.
+
+| Dependency | Version used | Minimum Required | CVEs? | Shared | [Bundled Qt Library](https://doc.qt.io/qt-5/configure-options.html) |
+| --- | --- | --- | --- | --- | --- | --- |
+| openssl | [1.0.1k]](https://www.openssl.org/source) | | Yes | | |
+| ccache | [3.3.4](https://ccache.samba.org/download.html) | | No | | |
+| libevent | [2.1.8-stable](https://github.com/libevent/libevent/releases) | 2.0.22 | No | | |
+| Qt | [5.7.1](https://download.qt.io/official_releases/qt/) | 4.7+ | No | | |
+| Freetype | [2.7.1](http://download.savannah.gnu.org/releases/freetype) | | No | | |
+| Boost | [1.64.0](http://www.boost.org/users/download/) | [1.47.0](https://github.com/bitcoin/bitcoin/pull/8920) | No | | |
+| Protobuf | [2.6.3](https://github.com/google/protobuf/releases) | | No | | |
+| Zeromq | [4.1.5](https://github.com/zeromq/libzmq/releases) | | No | | |
+| miniupnpc | [2.0.20170509](http://miniupnp.free.fr/files) | | No | | |
+| qrencode | [3.4.4](https://fukuchi.org/works/qrencode) | | No | | |
+| berkeley-db | [4.8.30](http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/downloads/index.html) | 4.8.x | No | | |
+| dbus | [1.10.18](https://cgit.freedesktop.org/dbus/dbus/tree/NEWS?h=dbus-1.10) | | No | yes | |
+| expat | [2.2.1](https://libexpat.github.io/) | | No | yes | |
+| fontconfig | [2.12.1](https://www.freedesktop.org/software/fontconfig/release/) | | No | yes | |
+| freetype | | | | | [no](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L38) (linux uses system) |
+| zlib | [1.2.11](http://zlib.net/) | | | | no |
+| libjpeg | | | | | [yes](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L75) |
+| libpng | | | | | [yes](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L74) |
+| PCRE | | | | | [yes](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L76) |
+| xcb | | | | | [yes](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L94) (linux only) |
+| xkbcommon | | | | | [yes](https://github.com/bitcoin/bitcoin/blob/master/depends/packages/qt.mk#L93) (linux only) |
+| HarfBuzz-NG | | | | | ? |
+| Python (tests) | | [3.4](https://www.python.org/downloads) | | | |
+| GCC | | [4.7+](https://gcc.gnu.org/) | | | |
+| Clang | | [3.3+](http://llvm.org/releases/download.html) (C++11 support) | | | |