Skip to content

Make (Read/Write)BinaryFile work with char vector

Cirrus CI / no wallet, libbitcoinkernel failed Jan 11, 2024 in 1m 46s

Task Summary

Instruction ci failed in 01:37

Details

✅ 00:03 clone
✅ 00:02 merge_base
❌ 01:37 ci

make[1]: *** [Makefile:20243: install-recursive] Error 1
make[1]: Leaving directory '/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src'
make: *** [Makefile:815: install-recursive] Error 1
Build failure. Verbose build follows.
+ echo 'Build failure. Verbose build follows.'
+ make install V=1
Making install in src
make[1]: Entering directory '/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src'
make[2]: Entering directory '/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src'
rm -f libbitcoin_node.a
ar cr libbitcoin_node.a libbitcoin_node_a-addrdb.o libbitcoin_node_a-addrman.o libbitcoin_node_a-banman.o libbitcoin_node_a-bip324.o libbitcoin_node_a-blockencodings.o libbitcoin_node_a-blockfilter.o libbitcoin_node_a-chain.o consensus/libbitcoin_node_a-tx_verify.o libbitcoin_node_a-dbwrapper.o libbitcoin_node_a-deploymentstatus.o libbitcoin_node_a-flatfile.o libbitcoin_node_a-headerssync.o libbitcoin_node_a-httprpc.o libbitcoin_node_a-httpserver.o libbitcoin_node_a-i2p.o index/libbitcoin_node_a-base.o index/libbitcoin_node_a-blockfilterindex.o index/libbitcoin_node_a-coinstatsindex.o index/libbitcoin_node_a-txindex.o libbitcoin_node_a-init.o kernel/libbitcoin_node_a-chain.o kernel/libbitcoin_node_a-checks.o kernel/libbitcoin_node_a-coinstats.o kernel/libbitcoin_node_a-context.o kernel/libbitcoin_node_a-cs_main.o kernel/libbitcoin_node_a-disconnected_transactions.o kernel/libbitcoin_node_a-mempool_persist.o kernel/libbitcoin_node_a-mempool_removal_reason.o libbitcoin_node_a-mapport.o libbitcoin_node_a-net.o libbitcoin_node_a-net_processing.o libbitcoin_node_a-netgroup.o node/libbitcoin_node_a-abort.o node/libbitcoin_node_a-blockmanager_args.o node/libbitcoin_node_a-blockstorage.o node/libbitcoin_node_a-caches.o node/libbitcoin_node_a-chainstate.o node/libbitcoin_node_a-chainstatemanager_args.o node/libbitcoin_node_a-coin.o node/libbitcoin_node_a-coins_view_args.o node/libbitcoin_node_a-connection_types.o node/libbitcoin_node_a-context.o node/libbitcoin_node_a-database_args.o node/libbitcoin_node_a-eviction.o node/libbitcoin_node_a-interface_ui.o node/libbitcoin_node_a-interfaces.o node/libbitcoin_node_a-kernel_notifications.o node/libbitcoin_node_a-mempool_args.o node/libbitcoin_node_a-mempool_persist_args.o node/libbitcoin_node_a-miner.o node/libbitcoin_node_a-mini_miner.o node/libbitcoin_node_a-minisketchwrapper.o node/libbitcoin_node_a-peerman_args.o node/libbitcoin_node_a-psbt.o node/libbitcoin_node_a-transaction.o node/libbitcoin_node_a-txreconciliation.o node/libbitcoin_node_a-utxo_snapshot.o node/libbitcoin_node_a-validation_cache_args.o libbitcoin_node_a-noui.o policy/libbitcoin_node_a-fees.o policy/libbitcoin_node_a-fees_args.o policy/libbitcoin_node_a-packages.o policy/libbitcoin_node_a-rbf.o policy/libbitcoin_node_a-settings.o libbitcoin_node_a-pow.o libbitcoin_node_a-rest.o rpc/libbitcoin_node_a-blockchain.o rpc/libbitcoin_node_a-fees.o rpc/libbitcoin_node_a-mempool.o rpc/libbitcoin_node_a-mining.o rpc/libbitcoin_node_a-net.o rpc/libbitcoin_node_a-node.o rpc/libbitcoin_node_a-output_script.o rpc/libbitcoin_node_a-rawtransaction.o rpc/libbitcoin_node_a-server.o rpc/libbitcoin_node_a-server_util.o rpc/libbitcoin_node_a-signmessage.o rpc/libbitcoin_node_a-txoutproof.o script/libbitcoin_node_a-sigcache.o libbitcoin_node_a-signet.o libbitcoin_node_a-timedata.o libbitcoin_node_a-torcontrol.o libbitcoin_node_a-txdb.o libbitcoin_node_a-txmempool.o libbitcoin_node_a-txorphanage.o libbitcoin_node_a-txrequest.o libbitcoin_node_a-validation.o libbitcoin_node_a-validationinterface.o libbitcoin_node_a-versionbits.o   libbitcoin_node_a-dummywallet.o 
ranlib libbitcoin_node.a
rm -f libbitcoin_common.a
ar cr libbitcoin_common.a libbitcoin_common_a-addresstype.o libbitcoin_common_a-base58.o libbitcoin_common_a-bech32.o libbitcoin_common_a-chainparams.o libbitcoin_common_a-coins.o common/libbitcoin_common_a-args.o common/libbitcoin_common_a-bloom.o common/libbitcoin_common_a-config.o common/libbitcoin_common_a-init.o common/libbitcoin_common_a-interfaces.o common/libbitcoin_common_a-run_command.o common/libbitcoin_common_a-settings.o common/libbitcoin_common_a-system.o libbitcoin_common_a-compressor.o libbitcoin_common_a-core_read.o libbitcoin_common_a-core_write.o libbitcoin_common_a-deploymentinfo.o libbitcoin_common_a-external_signer.o init/libbitcoin_common_a-common.o kernel/libbitcoin_common_a-chainparams.o libbitcoin_common_a-key.o libbitcoin_common_a-key_io.o libbitcoin_common_a-merkleblock.o libbitcoin_common_a-net_types.o libbitcoin_common_a-netaddress.o libbitcoin_common_a-netbase.o libbitcoin_common_a-net_permissions.o libbitcoin_common_a-outputtype.o policy/libbitcoin_common_a-feerate.o policy/libbitcoin_common_a-policy.o libbitcoin_common_a-protocol.o libbitcoin_common_a-psbt.o rpc/libbitcoin_common_a-external_signer.o rpc/libbitcoin_common_a-rawtransaction_util.o rpc/libbitcoin_common_a-request.o rpc/libbitcoin_common_a-util.o libbitcoin_common_a-scheduler.o script/libbitcoin_common_a-descriptor.o script/libbitcoin_common_a-miniscript.o script/libbitcoin_common_a-sign.o script/libbitcoin_common_a-signingprovider.o script/libbitcoin_common_a-solver.o libbitcoin_common_a-warnings.o  common/libbitcoin_common_a-url.o 
ranlib libbitcoin_common.a
../share/genbuild.sh "/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/obj/build.h" \
  "/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu"
/usr/bin/ccache clang++-13 -stdlib=libc++ -std=c++20 -DHAVE_CONFIG_H -I. -I../src/config  -fmacro-prefix-map=/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu=. -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -DHAVE_BUILD_INFO -DPROVIDE_FUZZ_MAIN_FUNCTION -I. -I./minisketch/include -I./secp256k1/include -I./univalue/include -I/ci_container_base/depends/x86_64-pc-linux-gnu/include/  -fdebug-prefix-map=/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu=. -Wstack-protector -fstack-protector-all -fcf-protection=full -fstack-clash-protection   -Werror    -fvisibility=hidden -fPIE -pipe -std=c++20 -O2  -c -o util/libbitcoin_util_a-readwritefile.o `test -f 'util/readwritefile.cpp' || echo './'`util/readwritefile.cpp
util/readwritefile.cpp:23:84: error: implicit instantiation of undefined template 'std::vector<unsigned char>'
        const size_t n = fread(buffer, 1, std::min(sizeof(buffer), maxsize - output.size()), f);
                                                                                   ^
util/readwritefile.cpp:38:15: note: in instantiation of function template specialization 'ReadBinaryFile<std::vector<unsigned char>>' requested here
template bool ReadBinaryFile<std::vector<unsigned char>>(const fs::path &filename, std::vector<unsigned char>& output, size_t maxsize);
              ^
/usr/lib/llvm-13/bin/../include/c++/v1/iosfwd:251:28: note: template is declared here
class _LIBCPP_TEMPLATE_VIS vector;
                           ^
util/readwritefile.cpp:28:22: error: implicit instantiation of undefined template 'std::vector<unsigned char>'
            output = T{};
                     ^
/usr/lib/llvm-13/bin/../include/c++/v1/iosfwd:251:28: note: template is declared here
class _LIBCPP_TEMPLATE_VIS vector;
                           ^
util/readwritefile.cpp:31:15: error: implicit instantiation of undefined template 'std::vector<unsigned char>'
        output.insert(output.end(), buffer, buffer + n);
              ^
/usr/lib/llvm-13/bin/../include/c++/v1/iosfwd:251:28: note: template is declared here
class _LIBCPP_TEMPLATE_VIS vector;
                           ^
util/readwritefile.cpp:46:20: error: implicit instantiation of undefined template 'std::vector<unsigned char>'
    if (fwrite(data.data(), 1, data.size(), f) != data.size()) {
                   ^
util/readwritefile.cpp:57:15: note: in instantiation of function template specialization 'WriteBinaryFile<std::vector<unsigned char>>' requested here
template bool WriteBinaryFile<std::vector<unsigned char>>(const fs::path& filename, const std::vector<unsigned char>& data);
              ^
/usr/lib/llvm-13/bin/../include/c++/v1/iosfwd:251:28: note: template is declared here
class _LIBCPP_TEMPLATE_VIS vector;
                           ^
4 errors generated.
make[2]: *** [Makefile:11634: util/libbitcoin_util_a-readwritefile.o] Error 1
make[2]: Leaving directory '/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src'
make[1]: *** [Makefile:20243: install-recursive] Error 1
make[1]: Leaving directory '/ci_container_base/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src'
make: *** [Makefile:815: install-recursive] Error 1

Exit status: 2