I'm trying to compile the Bitcoin source (1) on Ubuntu and I get:

In file included from bench/data.cpp:10:0:
./bench/data/block413567.raw.h:1:40: error: conflicting declaration ‘const unsigned char benchmark::data::block413567 []’
 static unsigned const char block413567[] = {
In file included from bench/data.cpp:5:0:
./bench/data.h:14:35: note: previous declaration as ‘const std::vector<unsigned char> benchmark::data::block413567’
 extern const std::vector<uint8_t> block413567;
/usr/include/c++/7/bits/stl_vector.h:270:7: note:   candidate expects 1 argument, 2 provided
/usr/include/c++/7/bits/stl_vector.h:259:7: note: candidate: std::vector<_Tp, _Alloc>::vector() [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]
/usr/include/c++/7/bits/stl_vector.h:259:7: note:   candidate expects 0 arguments, 2 provided
Makefile:10306: recipe for target 'bench/bench_bench_bitcoin-data.o' failed
make[2]: *** [bench/bench_bench_bitcoin-data.o] Error 1

Internet searches aren't giving me very actionable clues.

  1. master latest 3489b715120b1bf7559fbddf03cd87b889fdca47
  • 1
    A temporary solution is to add --disable-bench to ./configure to disable benchmarks until this is fixed. – MCCCS Jul 28 '19 at 17:02
  • But this is somehow cause by this line. _raw is not appended for some reason. I'd suggest submitting a bug report at github.com/bitcoin/bitcoin/issues – MCCCS Jul 28 '19 at 17:20
  • That worked, want to add your comments as an answer? And we'll mark this as solved. I created the GH issue: github.com/bitcoin/bitcoin/issues/16479 – givanse Jul 28 '19 at 18:31

I needed to remove stale files from old builds, just run make clean.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.