Merge #18340: doc: mention MAKE=gmake workaround when building on a BSD

84a46a9b93 doc: mention MAKE=gmake workaround when building on a BSD (emu)

Pull request description:

  Fixes: #14404.
  Replaces: #18129.

ACKs for top commit:
  vasild:
    ACK https://github.com/bitcoin/bitcoin/pull/18340/commits/84a46a9b93671b899faf3900936904199d92daaf
  laanwj:
    ACK 84a46a9b93

Tree-SHA512: 7a28c17c5d8a5d98aaedfb849d10a3a809f0d6d4b8f03add2cd6927e9d9689613b8b5c53e62d8e0fce8f4732efcee9ed3a83b0ed325b38934ceff6057a6db163
This commit is contained in:
Wladimir J. van der Laan committed 2020-03-19 15:50:31 +01:00
commit 527c3989e7
3 files changed
+25 -20

No files matched your search

+10 -9
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/bitcoin/bitcoin.git git clone https://github.com/bitcoin/bitcoin.git
@@ -18,7 +18,7 @@ git clone https://github.com/bitcoin/bitcoin.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,32 +29,33 @@ 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"
``` ```
## Building Bitcoin Core ## Building Bitcoin Core
**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
``` ```
+8 -6
View File
@@ -37,13 +37,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"
``` ```
@@ -52,24 +52,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:
+7 -5
View File
@@ -38,19 +38,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 Bitcoin Core ### Building Bitcoin 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
@@ -70,12 +70,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: