Bitcoin full node and query server

Jul 21, 2024

View in context in the libbitcoin Slack #general mirror.

P
parsevalbtc22:08
For potential linux testers, I have compiled launching the following command: CFLAGS="-O3" CXXFLAGS="-O3" ./install.sh --prefix=/home/user --build-boost --enable-ndebug --disable-shared --enable-avx2 --enable-sse41
✅ 1🔥 1
Tanay Raikhere21:01
I installed a fresh os (linux mint) in my system, and had a couple of issues with installing the node. firstly had to install build-essentials, lib-tool, and then had to run the script after compilation finally ran into this issue
src/messages/address.cpp:47:40: error: class template argument deduction failed:
   47 |     system::byte_reader reader{ source };
      |                                        ^
In file included from /usr/local/include/bitcoin/system/stream/streamers/bit_reader.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_flipper.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/stream.hpp:33,
                 from /usr/local/include/bitcoin/system/chain/header.hpp:29,
                 from /usr/local/include/bitcoin/system/chain/block.hpp:26,
                 from /usr/local/include/bitcoin/system/chain/chain.hpp:22,
                 from /usr/local/include/bitcoin/system/settings.hpp:22,
                 from /usr/local/include/bitcoin/system.hpp:29,
                 from ./include/bitcoin/network/messages/address.hpp:23,
                 from src/messages/address.cpp:19:
/usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp: In function 'byte_reader(IStream&, libbitcoin::arena* const&)-> libbitcoin::system::byte_reader<IStream> [with IStream = libbitcoin::system::istream<>; libbitcoin::system::bytereader::memory_arena = libbitcoin::arena*]':
/usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp:44:48: error: 'static libbitcoin::arena* libbitcoin::system::byte_reader<IStream>::default_arena() [with IStream = libbitcoin::system::istream<>; libbitcoin::system::bytereader::memory_arena = libbitcoin::arena*]' is private within this context
   44 |         const memory_arena& arena=default_arena()) NOEXCEPT;
      |                                   ~~~~^
In file included from /usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp:229,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_reader.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_flipper.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/stream.hpp:33,
                 from /usr/local/include/bitcoin/system/chain/header.hpp:29,
                 from /usr/local/include/bitcoin/system/chain/block.hpp:26,
                 from /usr/local/include/bitcoin/system/chain/chain.hpp:22,
                 from /usr/local/include/bitcoin/system/settings.hpp:22,
                 from /usr/local/include/bitcoin/system.hpp:29,
                 from ./include/bitcoin/network/messages/address.hpp:23,
                 from src/messages/address.cpp:19:
/usr/local/include/bitcoin/system/impl/stream/streamers/byte_reader.ipp:45:1: note: declared private here
   45 | byte_reader<IStream>::default_arena() NOEXCEPT
      | ^~~~~~~~
In file included from /usr/local/include/bitcoin/system/stream/streamers/bit_reader.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_flipper.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/stream.hpp:33,
                 from /usr/local/include/bitcoin/system/chain/header.hpp:29,
                 from /usr/local/include/bitcoin/system/chain/block.hpp:26,
                 from /usr/local/include/bitcoin/system/chain/chain.hpp:22,
                 from /usr/local/include/bitcoin/system/settings.hpp:22,
                 from /usr/local/include/bitcoin/system.hpp:29,
                 from ./include/bitcoin/network/messages/address.hpp:23,
                 from src/messages/address.cpp:19:
/usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp:44:48: error: 'static libbitcoin::arena* libbitcoin::system::byte_reader<IStream>::default_arena() [with IStream = libbitcoin::system::istream<>; libbitcoin::system::bytereader::memory_arena = libbitcoin::arena*]' is private within this context
   44 |         const memory_arena& arena=default_arena()) NOEXCEPT;
      |                                   ~~~~^
In file included from /usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp:229,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_reader.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_flipper.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/stream.hpp:33,
                 from /usr/local/include/bitcoin/system/chain/header.hpp:29,
                 from /usr/local/include/bitcoin/system/chain/block.hpp:26,
                 from /usr/local/include/bitcoin/system/chain/chain.hpp:22,
                 from /usr/local/include/bitcoin/system/settings.hpp:22,
                 from /usr/local/include/bitcoin/system.hpp:29,
                 from ./include/bitcoin/network/messages/address.hpp:23,
                 from src/messages/address.cpp:19:
/usr/local/include/bitcoin/system/impl/stream/streamers/byte_reader.ipp:45:1: note: declared private here
   45 | byte_reader<IStream>::default_arena() NOEXCEPT
      | ^~~~~~~~
src/messages/address.cpp:47:40: note:   when instantiating default argument for call to 'byte_reader(IStream&, libbitcoin::arena* const&)-> libbitcoin::system::byte_reader<IStream> [with IStream = libbitcoin::system::istream<>; libbitcoin::system::bytereader::memory_arena = libbitcoin::arena*]'
   47 |     system::byte_reader reader{ source };
      |                                        ^
  CXX      src/messages/libbitcoin_network_la-alert_item.lo
make: * [Makefile:2352: src/messages/libbitcoin_network_la-address.lo] Error 1
make: * Waiting for unfinished jobs....
src/messages/alert.cpp: In static member function 'static libbitcoin::network::messages::alert::cptr libbitcoin::network::messages::alert::deserialize(uint32_t, const data_chunk&)':
src/messages/alert.cpp:44:40: error: class template argument deduction failed:
   44 |     system::byte_reader reader{ source };
      |                                        ^
In file included from /usr/local/include/bitcoin/system/stream/streamers/bit_reader.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_flipper.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/stream.hpp:33,
                 from /usr/local/include/bitcoin/system/chain/header.hpp:29,
                 from /usr/local/include/bitcoin/system/chain/block.hpp:26,
                 from /usr/local/include/bitcoin/system/chain/chain.hpp:22,
                 from /usr/local/include/bitcoin/system/settings.hpp:22,
                 from /usr/local/include/bitcoin/system.hpp:29,
                 from ./include/bitcoin/network/messages/alert.hpp:23,
                 from src/messages/alert.cpp:19:
/usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp: In function 'byte_reader(IStream&, libbitcoin::arena* const&)-> libbitcoin::system::byte_reader<IStream> [with IStream = libbitcoin::system::istream<>; libbitcoin::system::bytereader::memory_arena = libbitcoin::arena*]':
/usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp:44:48: error: 'static libbitcoin::arena* libbitcoin::system::byte_reader<IStream>::default_arena() [with IStream = libbitcoin::system::istream<>; libbitcoin::system::bytereader::memory_arena = libbitcoin::arena*]' is private within this context
   44 |         const memory_arena& arena=default_arena()) NOEXCEPT;
      |                                   ~~~~^
In file included from /usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp:229,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_reader.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_flipper.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/stream.hpp:33,
                 from /usr/local/include/bitcoin/system/chain/header.hpp:29,
                 from /usr/local/include/bitcoin/system/chain/block.hpp:26,
                 from /usr/local/include/bitcoin/system/chain/chain.hpp:22,
                 from /usr/local/include/bitcoin/system/settings.hpp:22,
                 from /usr/local/include/bitcoin/system.hpp:29,
                 from ./include/bitcoin/network/messages/alert.hpp:23,
                 from src/messages/alert.cpp:19:
/usr/local/include/bitcoin/system/impl/stream/streamers/byte_reader.ipp:45:1: note: declared private here
   45 | byte_reader<IStream>::default_arena() NOEXCEPT
      | ^~~~~~~~
In file included from /usr/local/include/bitcoin/system/stream/streamers/bit_reader.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_flipper.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/stream.hpp:33,
                 from /usr/local/include/bitcoin/system/chain/header.hpp:29,
                 from /usr/local/include/bitcoin/system/chain/block.hpp:26,
                 from /usr/local/include/bitcoin/system/chain/chain.hpp:22,
                 from /usr/local/include/bitcoin/system/settings.hpp:22,
                 from /usr/local/include/bitcoin/system.hpp:29,
                 from ./include/bitcoin/network/messages/alert.hpp:23,
                 from src/messages/alert.cpp:19:
/usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp:44:48: error: 'static libbitcoin::arena* libbitcoin::system::byte_reader<IStream>::default_arena() [with IStream = libbitcoin::system::istream<>; libbitcoin::system::bytereader::memory_arena = libbitcoin::arena*]' is private within this context
   44 |         const memory_arena& arena=default_arena()) NOEXCEPT;
      |                                   ~~~~^
In file included from /usr/local/include/bitcoin/system/stream/streamers/byte_reader.hpp:229,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_reader.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/streamers/bit_flipper.hpp:27,
                 from /usr/local/include/bitcoin/system/stream/stream.hpp:33,
                 from /usr/local/include/bitcoin/system/chain/header.hpp:29,
                 from /usr/local/include/bitcoin/system/chain/block.hpp:26,
                 from /usr/local/include/bitcoin/system/chain/chain.hpp:22,
                 from /usr/local/include/bitcoin/system/settings.hpp:22,
                 from /usr/local/include/bitcoin/system.hpp:29,
                 from ./include/bitcoin/network/messages/alert.hpp:23,
                 from src/messages/alert.cpp:19:
/usr/local/include/bitcoin/system/impl/stream/streamers/byte_reader.ipp:45:1: note: declared private here
   45 | byte_reader<IStream>::default_arena() NOEXCEPT
      | ^~~~~~~~
src/messages/alert.cpp:44:40: note:   when instantiating default argument for call to 'byte_reader(IStream&, libbitcoin::arena* const&)-> libbitcoin::system::byte_reader<IStream> [with IStream = libbitcoin::system::istream<>; libbitcoin::system::bytereader::memory_arena = libbitcoin::arena*]'
   44 |     system::byte_reader reader{ source };
      |                                        ^
make: * [Makefile:2366: src/messages/libbitcoin_network_la-alert.lo] Error 1

real	11m29.040s
user	31m51.719s
sys	2m16.342s
I have no idea how to resolve this one :(