Update build instructions for Berkeley DB

- People were having problems with the .so when installing in
  alternative locations.
  Like gitian, build a static library with -fPIC that can
  be embedded into the executables.

- Add some missing steps

- Add reminder that BerkeleyDB is only needed when wallet support is
  enabled

Conflicts:

	doc/build-unix.md
This commit is contained in:
Wladimir J. van der Laan 2014-05-01 09:56:36 +02:00 committed by Ross Nicoll
parent 789d78540c
commit bd1bc7db09
No known key found for this signature in database
GPG key ID: 9142E5F7E533CE3B

View file

@ -117,13 +117,33 @@ miniupnpc
Berkeley DB
-----------
You need Berkeley DB 5.1. If you have to build Berkeley DB yourself:
It is recommended to use Berkeley DB 5.1. If you have to build it yourself:
cd build_unix/
../dist/configure --enable-cxx
make
sudo make install
```bash
BITCOIN_ROOT=$(pwd)
# Pick some path to install BDB to, here we create a directory within the bitcoin directory
BDB_PREFIX="${BITCOIN_ROOT}/db5"
mkdir -p $BDB_PREFIX
# Fetch the source and verify that it is not tampered with
wget 'http://download.oracle.com/berkeley-db/db-5.1.29.NC.tar.gz'
echo '08238e59736d1aacdd47cfb8e68684c695516c37f4fbe1b8267dde58dc3a576c db-5.1.29.NC.tar.gz' | sha256sum -c
# -> db-5.1.29.NC.tar.gz: OK
tar -xzvf db-5.1.29.NC.tar.gz
# Build the library and install to our prefix
cd db-5.1.29.NC/build_unix/
# Note: Do a static build so that it can be embedded into the exectuable, instead of having to find a .so at runtime
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=$BDB_PREFIX
make install
# Configure Bitcoin Core to use our own-built instance of BDB
cd $BITCOIN_ROOT
./configure (other args...) LDFLAGS="-L${BDB_PREFIX}/lib/" CPPFLAGS="-I${BDB_PREFIX}/include/"
```
**Note**: You only need Berkeley DB if the wallet is enabled (see the section *Disable-Wallet mode* below).
Boost
-----