merge bitcoin#18340: mention MAKE=gmake workaround when building on a BSD

This commit is contained in:
Kittywhiskers Van Gogh 2020-02-12 18:16:39 +00:00
parent 60084960ec
commit 67db40e63f
3 changed files with 24 additions and 19 deletions

View File

@ -10,7 +10,7 @@ This guide does not contain instructions for building the GUI.
You will need the following dependencies, which can be installed as root via pkg: You will need the following dependencies, which can be installed as root via pkg:
```shell ```bash
pkg install autoconf automake boost-libs git gmake libevent libtool pkgconf pkg install autoconf automake boost-libs git gmake libevent libtool pkgconf
git clone https://github.com/dashpay/dash.git git clone https://github.com/dashpay/dash.git
@ -18,7 +18,7 @@ git clone https://github.com/dashpay/dash.git
In order to run the test suite (recommended), you will need to have Python 3 installed: In order to run the test suite (recommended), you will need to have Python 3 installed:
```shell ```bash
pkg install python3 pkg install python3
``` ```
@ -29,7 +29,7 @@ See [dependencies.md](dependencies.md) for a complete overview.
BerkeleyDB is only necessary for the wallet functionality. To skip this, pass BerkeleyDB is only necessary for the wallet functionality. To skip this, pass
`--disable-wallet` to `./configure` and skip to the next section. `--disable-wallet` to `./configure` and skip to the next section.
```shell ```bash
./contrib/install_db4.sh `pwd` ./contrib/install_db4.sh `pwd`
export BDB_PREFIX="$PWD/db4" export BDB_PREFIX="$PWD/db4"
``` ```
@ -39,22 +39,23 @@ export BDB_PREFIX="$PWD/db4"
**Important**: Use `gmake` (the non-GNU `make` will exit with an error). **Important**: Use `gmake` (the non-GNU `make` will exit with an error).
With wallet: With wallet:
```shell ```bash
./autogen.sh ./autogen.sh
./configure --with-gui=no \ ./configure --with-gui=no \
BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" \ BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" \
BDB_CFLAGS="-I${BDB_PREFIX}/include" BDB_CFLAGS="-I${BDB_PREFIX}/include" \
MAKE=gmake
``` ```
Without wallet: Without wallet:
```shell ```bash
./autogen.sh ./autogen.sh
./configure --with-gui=no --disable-wallet ./configure --with-gui=no --disable-wallet MAKE=gmake
``` ```
followed by: followed by:
```shell ```bash
gmake # use -jX here for parallelism gmake # use -jX here for parallelism
gmake check # Run tests if Python 3 is available gmake check # Run tests if Python 3 is available
``` ```

View File

@ -40,13 +40,13 @@ from ports, for the same reason as boost above (g++/libstd++ incompatibility).
If you have to build it yourself, you can use [the installation script included If you have to build it yourself, you can use [the installation script included
in contrib/](/contrib/install_db4.sh) like so: in contrib/](/contrib/install_db4.sh) like so:
```shell ```bash
./contrib/install_db4.sh `pwd` ./contrib/install_db4.sh `pwd`
``` ```
from the root of the repository. Then set `BDB_PREFIX` for the next section: from the root of the repository. Then set `BDB_PREFIX` for the next section:
```shell ```bash
export BDB_PREFIX="$PWD/db4" export BDB_PREFIX="$PWD/db4"
``` ```
@ -55,24 +55,26 @@ export BDB_PREFIX="$PWD/db4"
**Important**: Use `gmake` (the non-GNU `make` will exit with an error). **Important**: Use `gmake` (the non-GNU `make` will exit with an error).
With wallet: With wallet:
``` ```bash
./autogen.sh ./autogen.sh
./configure --with-gui=no CPPFLAGS="-I/usr/pkg/include" \ ./configure --with-gui=no CPPFLAGS="-I/usr/pkg/include" \
LDFLAGS="-L/usr/pkg/lib" \ LDFLAGS="-L/usr/pkg/lib" \
BOOST_CPPFLAGS="-I/usr/pkg/include" \ BOOST_CPPFLAGS="-I/usr/pkg/include" \
BOOST_LDFLAGS="-L/usr/pkg/lib" \ BOOST_LDFLAGS="-L/usr/pkg/lib" \
BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" \ BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" \
BDB_CFLAGS="-I${BDB_PREFIX}/include" BDB_CFLAGS="-I${BDB_PREFIX}/include" \
MAKE=gmake
``` ```
Without wallet: Without wallet:
``` ```bash
./autogen.sh ./autogen.sh
./configure --with-gui=no --disable-wallet \ ./configure --with-gui=no --disable-wallet \
CPPFLAGS="-I/usr/pkg/include" \ CPPFLAGS="-I/usr/pkg/include" \
LDFLAGS="-L/usr/pkg/lib" \ LDFLAGS="-L/usr/pkg/lib" \
BOOST_CPPFLAGS="-I/usr/pkg/include" \ BOOST_CPPFLAGS="-I/usr/pkg/include" \
BOOST_LDFLAGS="-L/usr/pkg/lib" BOOST_LDFLAGS="-L/usr/pkg/lib" \
MAKE=gmake
``` ```
Build and run the tests: Build and run the tests:

View File

@ -40,19 +40,19 @@ from ports, for the same reason as boost above (g++/libstd++ incompatibility).
If you have to build it yourself, you can use [the installation script included If you have to build it yourself, you can use [the installation script included
in contrib/](/contrib/install_db4.sh) like so: in contrib/](/contrib/install_db4.sh) like so:
```shell ```bash
./contrib/install_db4.sh `pwd` CC=cc CXX=c++ ./contrib/install_db4.sh `pwd` CC=cc CXX=c++
``` ```
from the root of the repository. Then set `BDB_PREFIX` for the next section: from the root of the repository. Then set `BDB_PREFIX` for the next section:
```shell ```bash
export BDB_PREFIX="$PWD/db4" export BDB_PREFIX="$PWD/db4"
``` ```
### Building Dash Core ### Building Dash Core
**Important**: use `gmake`, not `make`. The non-GNU `make` will exit with a horrible error. **Important**: Use `gmake` (the non-GNU `make` will exit with an error).
Preparation: Preparation:
```bash ```bash
@ -65,12 +65,14 @@ Make sure `BDB_PREFIX` is set to the appropriate path from the above steps.
To configure with wallet: To configure with wallet:
```bash ```bash
./configure --with-gui=no CC=cc CXX=c++ \ ./configure --with-gui=no CC=cc CXX=c++ \
BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" BDB_CFLAGS="-I${BDB_PREFIX}/include" BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" \
BDB_CFLAGS="-I${BDB_PREFIX}/include" \
MAKE=gmake
``` ```
To configure without wallet: To configure without wallet:
```bash ```bash
./configure --disable-wallet --with-gui=no CC=cc CXX=c++ ./configure --disable-wallet --with-gui=no CC=cc CXX=c++ MAKE=gmake
``` ```
Build and run the tests: Build and run the tests: