Create dependencies.md, and link dependencies file from README & build docs

This commit is contained in:
flack 2017-07-09 13:15:45 +02:00
parent 1d4805ce04
commit e91b961923
6 changed files with 40 additions and 3 deletions

View file

@ -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. 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) - [OS X Build Notes](build-osx.md)
- [Unix Build Notes](build-unix.md) - [Unix Build Notes](build-unix.md)
- [Windows Build Notes](build-windows.md) - [Windows Build Notes](build-windows.md)

View file

@ -18,12 +18,12 @@ pkg_add automake # (select highest version, e.g. 1.15)
pkg_add python # (select highest version, e.g. 3.5) 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 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 ```bash
pkg_add g++ # (select newest 4.x version, e.g. 4.9.3) pkg_add g++ # (select newest 4.x version, e.g. 4.9.3)

View file

@ -18,6 +18,8 @@ Dependencies
brew install automake berkeley-db4 libtool boost --c++11 miniupnpc openssl pkg-config protobuf qt libevent 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 If you want to build the disk image with `make deploy` (.dmg / optional), you need RSVG
brew install librsvg brew install librsvg

View file

@ -49,7 +49,7 @@ Optional dependencies:
univalue | Utility | JSON parsing and encoding (bundled version will be used unless --with-system-univalue passed to configure) 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) 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 Memory Requirements
-------------------- --------------------

View file

@ -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 packages (such as `protobuf`) need to build host utilities that are used in the
build process. build process.
See also: [dependencies.md](dependencies.md).
## Building for 64-bit Windows ## Building for 64-bit Windows
To build executables for Windows 64-bit, install the following dependencies: To build executables for Windows 64-bit, install the following dependencies:

32
doc/dependencies.md Normal file
View file

@ -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) | | | |