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
This commit is contained in:
parent
d0a2e2eb87
commit
bfb154e9fc
1 changed files with 25 additions and 9 deletions
|
@ -137,17 +137,33 @@ miniupnpc
|
||||||
|
|
||||||
Berkeley DB
|
Berkeley DB
|
||||||
-----------
|
-----------
|
||||||
You need Berkeley DB 4.8. If you have to build it yourself:
|
It is recommended to use Berkeley DB 4.8. If you have to build it yourself:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
BITCOIN_ROOT=$(pwd)
|
||||||
|
|
||||||
|
# Pick some path to install BDB to, here we create a directory within the bitcoin directory
|
||||||
|
BDB_PREFIX="${BITCOIN_ROOT}/db4"
|
||||||
|
mkdir -p $BDB_PREFIX
|
||||||
|
|
||||||
|
# Fetch the source and verify that it is not tampered with
|
||||||
wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz'
|
wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz'
|
||||||
echo '12edc0df75bf9abd7f82f821795bcee50f42cb2e5f76a6a281b85732798364ef db-4.8.30.NC.tar.gz' | sha256sum -c
|
echo '12edc0df75bf9abd7f82f821795bcee50f42cb2e5f76a6a281b85732798364ef db-4.8.30.NC.tar.gz' | sha256sum -c
|
||||||
# -> db-4.8.30.NC.tar.gz: OK
|
# -> db-4.8.30.NC.tar.gz: OK
|
||||||
tar -xzvf db-4.8.30.NC.tar.gz
|
tar -xzvf db-4.8.30.NC.tar.gz
|
||||||
cd build_unix/
|
|
||||||
../dist/configure --enable-cxx
|
|
||||||
make
|
|
||||||
sudo make install
|
|
||||||
|
|
||||||
|
# Build the library and install to our prefix
|
||||||
|
cd db-4.8.30.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
|
Boost
|
||||||
-----
|
-----
|
||||||
|
|
Loading…
Reference in a new issue