aeternity / aerepl

A sophisticated Read-Eval-Print Loop for Sophia

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Need to build twice

radrow opened this issue · comments

For some reason the first time I run make I get linker error while building rocksdb:

In file included from /home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:9:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:65:7: error: ‘uint8_t’ does not name a type
   65 | const uint8_t kNoEntry = 255;
      |       ^~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:1:1: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
  +++ |+#include <cstdint>
    1 | // Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:66:7: error: ‘uint8_t’ does not name a type
   66 | const uint8_t kCollision = 254;
      |       ^~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:66:7: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:67:7: error: ‘uint8_t’ does not name a type
   67 | const uint8_t kMaxRestartSupportedByHashIndex = 253;
      |       ^~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:67:7: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:112:25: error: ‘uint32_t’ was not declared in this scope
  112 |   std::vector<std::pair<uint32_t, uint8_t>> hash_and_restart_pairs_;
      |                         ^~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:112:25: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:112:35: error: ‘uint8_t’ was not declared in this scope
  112 |   std::vector<std::pair<uint32_t, uint8_t>> hash_and_restart_pairs_;
      |                                   ^~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:112:35: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:112:35: error: template argument 1 is invalid
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:112:35: error: template argument 2 is invalid
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:112:42: error: template argument 1 is invalid
  112 |   std::vector<std::pair<uint32_t, uint8_t>> hash_and_restart_pairs_;
      |                                          ^~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:112:42: error: template argument 2 is invalid
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h: In member function ‘size_t rocksdb::DataBlockHashIndexBuilder::EstimateSize() const’:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:93:5: error: ‘uint16_t’ was not declared in this scope
   93 |     uint16_t estimated_num_buckets =
      |     ^~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:93:5: note: ‘uint16_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:97:5: error: ‘estimated_num_buckets’ was not declared in this scope; did you mean ‘estimated_num_buckets_’?
   97 |     estimated_num_buckets |= 1;
      |     ^~~~~~~~~~~~~~~~~~~~~
      |     estimated_num_buckets_
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:100:63: error: ‘uint8_t’ was not declared in this scope
  100 |            static_cast<size_t>(estimated_num_buckets * sizeof(uint8_t));
      |                                                               ^~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:100:63: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h: At global scope:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:120:37: error: ‘uint16_t’ has not been declared
  120 |   void Initialize(const char* data, uint16_t size, uint16_t* map_offset);
      |                                     ^~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:120:52: error: ‘uint16_t’ has not been declared
  120 |   void Initialize(const char* data, uint16_t size, uint16_t* map_offset);
      |                                                    ^~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:122:3: error: ‘uint8_t’ does not name a type
  122 |   uint8_t Lookup(const char* data, uint32_t map_offset, const Slice& key) const;
      |   ^~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:122:3: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:133:3: error: ‘uint16_t’ does not name a type
  133 |   uint16_t num_buckets_;
      |   ^~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:133:3: note: ‘uint16_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h: In constructor ‘rocksdb::DataBlockHashIndex::DataBlockHashIndex()’:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:118:26: error: class ‘rocksdb::DataBlockHashIndex’ does not have any field named ‘num_buckets_’
  118 |   DataBlockHashIndex() : num_buckets_(0) {}
      |                          ^~~~~~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h: In member function ‘bool rocksdb::DataBlockHashIndex::Valid()’:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:124:32: error: ‘num_buckets_’ was not declared in this scope
  124 |   inline bool Valid() { return num_buckets_ != 0; }
      |                                ^~~~~~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc: In member function ‘void rocksdb::DataBlockHashIndexBuilder::Add(const rocksdb::Slice&, size_t)’:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:18:23: error: ‘kMaxRestartSupportedByHashIndex’ was not declared in this scope; did you mean ‘kMaxBlockSizeSupportedByHashIndex’?
   18 |   if (restart_index > kMaxRestartSupportedByHashIndex) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                       kMaxBlockSizeSupportedByHashIndex
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:24:27: error: request for member ‘emplace_back’ in ‘((rocksdb::DataBlockHashIndexBuilder*)this)->rocksdb::DataBlockHashIndexBuilder::hash_and_restart_pairs_’, which is of non-class type ‘int’
   24 |   hash_and_restart_pairs_.emplace_back(hash_value,
      |                           ^~~~~~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc: In member function ‘void rocksdb::DataBlockHashIndexBuilder::Finish(std::string&)’:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:43:45: error: ‘kNoEntry’ was not declared in this scope
   43 |   std::vector<uint8_t> buckets(num_buckets, kNoEntry);
      |                                             ^~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:45:22: error: ‘begin’ was not declared in this scope; did you mean ‘std::begin’?
   45 |   for (auto& entry : hash_and_restart_pairs_) {
      |                      ^~~~~~~~~~~~~~~~~~~~~~~
      |                      std::begin
In file included from /usr/include/c++/13/string:53,
                 from /home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:5:
/usr/include/c++/13/bits/range_access.h:95:5: note: ‘std::begin’ declared here
   95 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:45:22: error: ‘end’ was not declared in this scope; did you mean ‘std::end’?
   45 |   for (auto& entry : hash_and_restart_pairs_) {
      |                      ^~~~~~~~~~~~~~~~~~~~~~~
      |                      std::end
/usr/include/c++/13/bits/range_access.h:106:5: note: ‘std::end’ declared here
  106 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:53:27: error: ‘kCollision’ was not declared in this scope
   53 |       buckets[buck_idx] = kCollision;
      |                           ^~~~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc: In member function ‘void rocksdb::DataBlockHashIndexBuilder::Reset()’:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:72:27: error: request for member ‘clear’ in ‘((rocksdb::DataBlockHashIndexBuilder*)this)->rocksdb::DataBlockHashIndexBuilder::hash_and_restart_pairs_’, which is of non-class type ‘int’
   72 |   hash_and_restart_pairs_.clear();
      |                           ^~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc: At global scope:
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:75:6: error: no declaration matches ‘void rocksdb::DataBlockHashIndex::Initialize(const char*, uint16_t, uint16_t*)’
   75 | void DataBlockHashIndex::Initialize(const char* data, uint16_t size,
      |      ^~~~~~~~~~~~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:120:8: note: candidate is: ‘void rocksdb::DataBlockHashIndex::Initialize(const char*, int, int*)’
  120 |   void Initialize(const char* data, uint16_t size, uint16_t* map_offset);
      |        ^~~~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:116:7: note: ‘class rocksdb::DataBlockHashIndex’ defined here
  116 | class DataBlockHashIndex {
      |       ^~~~~~~~~~~~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:85:9: error: no declaration matches ‘uint8_t rocksdb::DataBlockHashIndex::Lookup(const char*, uint32_t, const rocksdb::Slice&) const’
   85 | uint8_t DataBlockHashIndex::Lookup(const char* data, uint32_t map_offset,
      |         ^~~~~~~~~~~~~~~~~~
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.cc:85:9: note: no functions named ‘uint8_t rocksdb::DataBlockHashIndex::Lookup(const char*, uint32_t, const rocksdb::Slice&) const’
/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/deps/rocksdb/table/block_based/data_block_hash_index.h:116:7: note: ‘class rocksdb::DataBlockHashIndex’ defined here
  116 | class DataBlockHashIndex {
      |       ^~~~~~~~~~~~~~~~~~
gmake[8]: *** [CMakeFiles/rocksdb.dir/build.make:2148: CMakeFiles/rocksdb.dir/table/block_based/data_block_hash_index.cc.o] Error 1
gmake[8]: *** Waiting for unfinished jobs....
gmake[7]: *** [CMakeFiles/Makefile2:139: CMakeFiles/rocksdb.dir/all] Error 2
gmake[6]: *** [CMakeFiles/Makefile2:146: CMakeFiles/rocksdb.dir/rule] Error 2
gmake[5]: *** [Makefile:169: rocksdb] Error 2
gmake[4]: *** [CMakeFiles/rocksdb.dir/build.make:86: rocksdb-prefix/src/rocksdb-stamp/rocksdb-build] Error 2
gmake[3]: *** [CMakeFiles/Makefile2:170: CMakeFiles/rocksdb.dir/all] Error 2
gmake[2]: *** [Makefile:91: all] Error 2
gmake[2]: Leaving directory '/home/rjro/Documents/a/aerepl/node/_build/default/lib/rocksdb/_build/cmake'
+ exit 1

However, retrying always seems to help.