Skip to content

Commit e0fe658

Browse files
committed
Merge bitcoin#22335: doc: recommend --disable-external-signer in OpenBSD build guide
e65d1d4 doc: recommend `--disable-external-signer` in OpenBSD build guide (Sebastian Falbesoner) Pull request description: Building the master branch with the default build settings (i.e. with external signer support enabled) leads to the following errors on my OpenBSD 6.9 machine: ``` In file included from util/system.cpp:9: In file included from /usr/local/include/boost/process.hpp:25: In file included from /usr/local/include/boost/process/group.hpp:32: /usr/local/include/boost/process/detail/posix/wait_group.hpp:38:17: error: no member named 'waitid' in the global namespace ret = ::waitid(P_PGID, p.grp, &status, WEXITED | WNOHANG); ~~^ /usr/local/include/boost/process/detail/posix/wait_group.hpp:38:24: error: use of undeclared identifier 'P_PGID' ret = ::waitid(P_PGID, p.grp, &status, WEXITED | WNOHANG); ^ /usr/local/include/boost/process/detail/posix/wait_group.hpp:38:48: error: use of undeclared identifier 'WEXITED' ret = ::waitid(P_PGID, p.grp, &status, WEXITED | WNOHANG); ^ /usr/local/include/boost/process/detail/posix/wait_group.hpp:144:17: error: no member named 'waitid' in the global namespace ret = ::waitid(P_PGID, p.grp, &siginfo, WEXITED | WSTOPPED | WNOHANG); ~~^ /usr/local/include/boost/process/detail/posix/wait_group.hpp:144:24: error: use of undeclared identifier 'P_PGID' ret = ::waitid(P_PGID, p.grp, &siginfo, WEXITED | WSTOPPED | WNOHANG); ^ /usr/local/include/boost/process/detail/posix/wait_group.hpp:144:49: error: use of undeclared identifier 'WEXITED' ret = ::waitid(P_PGID, p.grp, &siginfo, WEXITED | WSTOPPED | WNOHANG); ^ /usr/local/include/boost/process/detail/posix/wait_group.hpp:144:59: error: use of undeclared identifier 'WSTOPPED' ret = ::waitid(P_PGID, p.grp, &siginfo, WEXITED | WSTOPPED | WNOHANG); ^ 7 errors generated. ``` This PR recommends passing `--disable-external-signer` in the OpenBSD build guide ([as suggested by laanwj](bitcoin#22294 (comment))). The same commit also bumps the OpenBSD version mentioned in the header to 6.9 -- I recently used this document to setup a Bitcoin Core build on 6.9 and the description and all mentioned versions were still valid (before external signer support was enabled by default). Would be nice if another OpenBSD user could confirm the build error. ACKs for top commit: laanwj: ACK e65d1d4 Tree-SHA512: c3ae7eca29cf42b4b52024477e1c3fb7242bbf9d809bc95f8fa08b2f9bf4bcfd4f22457d58569a208ac1d8e5fe41b270addd13d85a5bba0521a0f9e325288448
2 parents 8ab0c77 + e65d1d4 commit e0fe658

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

doc/build-openbsd.md

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
OpenBSD build guide
22
======================
3-
(updated for OpenBSD 6.7)
3+
(updated for OpenBSD 6.9)
44

55
This guide describes how to build bitcoind, bitcoin-qt, and command-line utilities on OpenBSD.
66

@@ -67,22 +67,29 @@ export AUTOMAKE_VERSION=1.16
6767
```
6868
Make sure `BDB_PREFIX` is set to the appropriate path from the above steps.
6969

70+
Note that building with external signer support currently fails on OpenBSD,
71+
hence you have to explicitely disable it by passing the parameter
72+
`--disable-external-signer` to the configure script.
73+
(Background: the feature requires the header-only library boost::process, which
74+
is available on OpenBSD 6.9 via Boost 1.72.0, but contains certain system calls
75+
and preprocessor defines like `waitid()` and `WEXITED` that are not available.)
76+
7077
To configure with wallet:
7178
```bash
72-
./configure --with-gui=no CC=cc CXX=c++ \
79+
./configure --with-gui=no --disable-external-signer CC=cc CXX=c++ \
7380
BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" \
7481
BDB_CFLAGS="-I${BDB_PREFIX}/include" \
7582
MAKE=gmake
7683
```
7784

7885
To configure without wallet:
7986
```bash
80-
./configure --disable-wallet --with-gui=no CC=cc CC_FOR_BUILD=cc CXX=c++ MAKE=gmake
87+
./configure --disable-wallet --with-gui=no --disable-external-signer CC=cc CC_FOR_BUILD=cc CXX=c++ MAKE=gmake
8188
```
8289

8390
To configure with GUI:
8491
```bash
85-
./configure --with-gui=yes CC=cc CXX=c++ \
92+
./configure --with-gui=yes --disable-external-signer CC=cc CXX=c++ \
8693
BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" \
8794
BDB_CFLAGS="-I${BDB_PREFIX}/include" \
8895
MAKE=gmake

0 commit comments

Comments
 (0)