Bitcoin full node and query server

Jul 2, 2026

View in context in the libbitcoin Slack #general mirror.

neillm03:01
Build issues with ultrafast. Any suggestions?
LOG Plain Text · 292.8 KB
~/libbitcoin/master/source ~/libbitcoin

********************** Configuration **********************
BUILD_boost                     : yes
BUILD_secp256k1                 : 
BUILD_ultrafast                 : yes
BUILD_SRC_DIR                   : /home/neillm/libbitcoin/master/source
BUILD_OBJ_DIR                   : /home/neillm/libbitcoin/master/source/obj
BUILD_OBJ_DIR_RELATIVE          : 
BUILD_CONFIG                    : release
BUILD_LINK                      : static
BUILD_FULL_REPOSITORIES         : 
BUILD_POST_INSTALL_CLEAN        : 
BUILD_USE_LOCAL_SRC             : yes
BUILD_SKIP_TESTS                : yes
PARALLEL                        : 96
PREFIX                          : /home/neillm/libbitcoin/master/install
DISPLAY_VERBOSE                 : 
CONFIGURE_OPTIONS               :  --with-ultrafast         --without-tests --prefix=/home/neillm/libbitcoin/master/install --enable-ndebug

********************** Toolchain Configuration Parameters **********************
CC                              : gcc
CFLAGS                          : -O3
CXX                             : g++
CXXFLAGS                        : -O3
LD_RUN_PATH                     : /home/neillm/libbitcoin/master/install/lib
LD_LIBRARY_PATH                 : :/usr/local/cuda-13.3/lib64:/usr/local/cuda-13.3/lib64:/home/neillm/libbitcoin/master/install/lib
PKG_CONFIG_PATH                 : /home/neillm/libbitcoin/master/install/lib/pkgconfig:/home/neillm/libbitcoin/master/install/lib/pkgconfig
LDLIBS                          : 
BOOST_ROOT                      : /home/neillm/libbitcoin/master/install
CMAKE_PREFIX_PATH               : 
CMAKE_INSTALL_PREFIX            : /home/neillm/libbitcoin/master/install
CMAKE_INCLUDE_PATH              : 
CMAKE_LIBRARY_PATH              : 

********************** Preparing to acquire boost **********************
Reusing existing 'boost' directory...

********************** Preparing to build boost **********************
full file
18 replies · pmienk, neillm, evoskuil · last Jul 06, 2026
pmienk03:24
The last time I tested the installation routine, shrec/UltrafastSecp256k1/main was 4.1.0.7 and our codebase wouldn't accept compilation without bitcoin-core/secp256k1/0.7.0. There may be drift in parameterization or change in behavior since then. As your log ends during Ultrafast compilation, I'd guess cuda libraries are missing during linking. it would be a behavior change since last I looked where there was fail-over into silent disabling of cuda. I'd prefer it to be a configuration error if a necessary dependency for configuration isn't found.
pmienk03:25
Currently working through autotools changes to support ultrafast. Will likely loop back soon after, so hopefully in the next week I have a better story for you.
🙏 2
neillm12:49
neillm@dev:~/libbitcoin$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2026 NVIDIA Corporation
Built on Tue_Jun_09_02:43:40_PM_PDT_2026
Cuda compilation tools, release 13.3, V13.3.73
Build cuda_13.3.r13.3/compiler.38244171_0
neillm@dev:~/libbitcoin$ nvidia-smi
Thu Jul  2 08:49:02 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 610.43.02              KMD Version: 610.43.02     CUDA UMD Version: 13.3     |
+-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  Quadro RTX 6000                On  |   00000000:21:00.0 Off |                  Off |
| 33%   28C    P8              9W /  260W |       1MiB /  24576MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|  No running processes found                                                             |
+-----------------------------------------------------------------------------------------+
neillm17:56
Any updates? This is the actual error that happens:
In file included from /home/neillm/libbitcoin/master/source/libbitcoin-server/builds/gnu/UltrafastSecp256k1/src/opencl/tests/test_opencl.cpp:9:
/home/neillm/libbitcoin/master/source/libbitcoin-server/builds/gnu/UltrafastSecp256k1/src/opencl/include/secp256k1_opencl.hpp:18:10: fatal error: secp256k1/types.hpp: No such file or directory
   18 | #include "secp256k1/types.hpp"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
gmake[2]: *** [src/opencl/CMakeFiles/opencl_test.dir/build.make:79: src/opencl/CMakeFiles/opencl_test.dir/tests/test_opencl.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:1010: src/opencl/CMakeFiles/opencl_test.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
neillm17:56
Ultrafast builds fine on my other machine w/o nvcc btw
pmienk17:58
I don't have the hardware to test any build options other than CPU. So no, I've got nothing new.
✅ 1
neillm22:45
Disabling OpenCL in the build options seems to work, but not sure if that's a valid configuration (i.e. cuda on, opencl off)
pmienk22:46
well, Cuda on doesn't mean it actually built. gotta check the log
pmienk22:46
OpenCL needing to be disabled means it tried to build with OpenCL, and couldn't instead of detecting that it wasn't supported by your environment and autodisabling.
pmienk22:46
it's not ideal from my perspective to do that fallback
pmienk22:47
but if you have Cuda support, then you've got something that should work on your hardware
pmienk22:49
see the cmake configuration output from ultrafast
neillm22:50
Yeah, it finds both cuda and opencl on my machine (because they're both there and working), but it fails on that missing header error above
pmienk22:51
cool! run it yet?
neillm22:51
Haven't tried yet
🫰 1
neillm22:54
Hrm, fun:
bs: /home/neillm/libbitcoin/master/install/include/bitcoin/database/tables/caches/ecdsa.hpp:272: bool libbitcoin::database::table::ecdsa_correlate::allocate::to_data(libbitcoin::database::flipper&) const: Assertion `!sink || sink.get_write_position() == minrow' failed.
Aborted                    ~/libbitcoin/master/install/bin/bs -c bs.cfg.v4.testnet4
pmienk22:57
gonna need @evoskuil for that one
evoskuil22:59
Yep, that's a break in the table verticalization work.
✅ 1