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.
- [Dependencies](dependencies.md)
- [OS X Build Notes](build-osx.md)
- [Unix Build Notes](build-unix.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)
```
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)

View file

@ -18,6 +18,8 @@ Dependencies
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
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)
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
--------------------

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
build process.
See also: [dependencies.md](dependencies.md).
## Building for 64-bit Windows
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) | | | |