Merge #10779: Create dependencies.md

e91b96192 Create dependencies.md, and link dependencies file from README & build docs (flack)

Pull request description:

  As @fanquake mentioned in #8639, this should probably be a file in `doc/`, so I went ahead and pulled the issue text via the github API and dumped it into a file. No modifications made, except one spelling fix. This makes the info easier to find, and it will get a proper version history, too.

Tree-SHA512: 6ba4c37c97200972a74724e0e346d6ad5947c01ad18638e15250f2b4cd747dd744aba16e306c98d59f35736542a5eded7a17b6a5ce6aebc63c0a9dc969b365ef
This commit is contained in:
Wladimir J. van der Laan 2017-09-07 02:49:05 +02:00
commit f65614726d
No known key found for this signature in database
GPG key ID: 1E4AED62986CD25D
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 python3 qt libevent brew install automake berkeley-db4 libtool boost --c++11 miniupnpc openssl pkg-config protobuf python3 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

@ -62,6 +62,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) | | | |