Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

make error!! #23

Closed
name55 opened this issue Jun 1, 2017 · 27 comments
Closed

make error!! #23

name55 opened this issue Jun 1, 2017 · 27 comments

Comments

@name55
Copy link

name55 commented Jun 1, 2017

[ 86%] Building CXX object plugins/producer_plugin/CMakeFiles/producer_plugin.dir/producer_plugin.cpp.o In file included from /home/ubuntu/eos/plugins/chain_plugin/include/eos/chain_plugin/chain_plugin.hpp:3:0, from /home/ubuntu/eos/plugins/producer_plugin/include/eos/producer_plugin/producer_plugin.hpp:26, from /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:24: /home/ubuntu/eos/libraries/chain/include/eos/chain/chain_controller.hpp:122:2: warning: #warning QUESTION Should we be setting o.base_scope here? [-Wcpp] #warning QUESTION Should we be setting o.base_scope here? ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp: In member function ?𻱶irtual void eos::producer_plugin::set_program_options(boost::program_options::options_description&, boost::program_options::options_description&?𼀺 /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:101:38: error: reference to ?𻱢po?𼀠is ambiguous ("enable-stale-production", bpo::bool_switch()->notifier([this](bool e){my->_production_enabled = e;}), " ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:41:39: note: candidates are: namespace bpo = boost::boost::program_options; namespace bpo = boost::program_options; ^ In file included from /home/ubuntu/eos/plugins/chain_plugin/include/eos/chain_plugin/chain_plugin.hpp:2:0, from /home/ubuntu/eos/plugins/producer_plugin/include/eos/producer_plugin/producer_plugin.hpp:26, from /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:24: /home/ubuntu/eos/libraries/appbase/include/appbase/application.hpp:8:42: note: namespace appbase::bpo = boost::boost::program_options; namespace bpo = boost::program_options; ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:102:37: error: reference to ?𻱢po?𼀠is ambiguous ("required-participation", bpo::bool_switch()->notifier([this](int e){my->_required_producer_participatio ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:41:39: note: candidates are: namespace bpo = boost::boost::program_options; namespace bpo = boost::program_options; ^ In file included from /home/ubuntu/eos/plugins/chain_plugin/include/eos/chain_plugin/chain_plugin.hpp:2:0, from /home/ubuntu/eos/plugins/producer_plugin/include/eos/producer_plugin/producer_plugin.hpp:26, from /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:24: /home/ubuntu/eos/libraries/appbase/include/appbase/application.hpp:8:42: note: namespace appbase::bpo = boost::boost::program_options; namespace bpo = boost::program_options; ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:103:28: error: reference to ?𻱢po?𼀠is ambiguous ("producer-id,w", bpo::value<vector<string>>()->composing()->multitoken(), ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:41:39: note: candidates are: namespace bpo = boost::boost::program_options; namespace bpo = boost::program_options; ^ In file included from /home/ubuntu/eos/plugins/chain_plugin/include/eos/chain_plugin/chain_plugin.hpp:2:0, from /home/ubuntu/eos/plugins/producer_plugin/include/eos/producer_plugin/producer_plugin.hpp:26, from /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:24: /home/ubuntu/eos/libraries/appbase/include/appbase/application.hpp:8:42: note: namespace appbase::bpo = boost::boost::program_options; namespace bpo = boost::program_options; ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:103:52: error: expected primary-expression before ?.?𼀠token ("producer-id,w", bpo::value<vector<string>>()->composing()->multitoken(), ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:103:55: error: expected primary-expression before ?.?𼀠token ("producer-id,w", bpo::value<vector<string>>()->composing()->multitoken(), ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:105:26: error: reference to ?𻱢po?𼀠is ambiguous ("private-key", bpo::value<vector<string>>()->composing()->multitoken()->default_value({fc::json::to_stri ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:41:39: note: candidates are: namespace bpo = boost::boost::program_options; namespace bpo = boost::program_options; ^ In file included from /home/ubuntu/eos/plugins/chain_plugin/include/eos/chain_plugin/chain_plugin.hpp:2:0, from /home/ubuntu/eos/plugins/producer_plugin/include/eos/producer_plugin/producer_plugin.hpp:26, from /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:24: /home/ubuntu/eos/libraries/appbase/include/appbase/application.hpp:8:42: note: namespace appbase::bpo = boost::boost::program_options; namespace bpo = boost::program_options; ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:105:50: error: expected primary-expression before ?.?𼀠token ("private-key", bpo::value<vector<string>>()->composing()->multitoken()->default_value({fc::json::to_stri ^ /home/ubuntu/eos/plugins/producer_plugin/producer_plugin.cpp:105:53: error: expected primary-expression before ?.?𼀠token ("private-key", bpo::value<vector<string>>()->composing()->multitoken()->default_value({fc::json::to_stri ^ plugins/producer_plugin/CMakeFiles/producer_plugin.dir/build.make:62: recipe for target 'plugins/producer_plugin/CMakeFiles/producer_plugin.dir/producer_plugin.cpp.o' failed make[2]: *** [plugins/producer_plugin/CMakeFiles/producer_plugin.dir/producer_plugin.cpp.o] Error 1 CMakeFiles/Makefile2:1337: recipe for target 'plugins/producer_plugin/CMakeFiles/producer_plugin.dir/all' failed make[1]: *** [plugins/producer_plugin/CMakeFiles/producer_plugin.dir/all] Error 2 Makefile:127: recipe for target 'all' failed

@nathanielhourt
Copy link
Contributor

Excerpt from your error:
/home/ubuntu/eos/libraries/appbase/include/appbase/application.hpp:8:42: note: namespace appbase::bpo = boost::boost::program_options;

application.hpp:8 says:
namespace bpo = boost::program_options;
Does your copy actually say boost::boost::program_options? That would be really weird.

@nathanielhourt
Copy link
Contributor

nathanielhourt commented Jun 1, 2017

Also, what compiler and version are you using?

@nathanielhourt
Copy link
Contributor

OK, I see this error with an old version of g++ on Ubuntu (Ubuntu only has old versions of anything). Supporting old compilers is nice, and I'd love to do it eventually, but in the meantime I recommend building with Clang 4.0.0, which I know works.

@jemekite
Copy link

My build also fail after last commit, error: no matching function for call to 'memcpy'

Build environtment:

  • Debian Jessie
  • cmake 3.8.2
  • clang 4.0
  • Boost 1.60

Error log:

[ 79%] Built target types_test
[ 79%] Building CXX object libraries/chain/CMakeFiles/eos_chain.dir/chain_administration_interface.cpp.o
In file included from /home/give/eos/libraries/chain/chain_controller.cpp:25:
/home/give/eos/libraries/chain/include/eos/chain/chain_controller.hpp:84:2: warning: QUESTION Should we be setting o.base_scope here? [-W#warnings]
#warning QUESTION Should we be setting o.base_scope here?
 ^
/home/give/eos/libraries/chain/wasm_interface.cpp:84:2: warning: TODO: wasm memcpy has undefined behavior if memory ranges overlap [-W#warnings]
#warning TODO: wasm memcpy has undefined behavior if memory ranges overlap
 ^
/home/give/eos/libraries/chain/wasm_interface.cpp:82:16: warning: unused variable 'src_end' [-Wunused-variable]
   const char* src_end = &memoryRef<const char>( mem, srcp+uint32_t(len) );
               ^
/home/give/eos/libraries/chain/wasm_interface.cpp:81:10: warning: unused variable 'dst_end' [-Wunused-variable]
   char* dst_end       = &memoryRef<char>( mem, dstp+uint32_t(len));
         ^
/home/give/eos/libraries/chain/block.cpp:88:2: warning: TODO The merkle root needs to be over all transactions, but this is currently hashing all threads merkle roots
      which will make proofs O(N) rather than O( LOG(N) ) [-W#warnings]
#warning TODO  The merkle root needs to be over all transactions, but this is currently hashing all threads merkle roots which will make proofs O(N) rather than O...
 ^
/home/give/eos/libraries/chain/block.cpp:93:2: warning: TODO Add global incremental block header merkle https://github.com/EOSIO/eos/issues/8 [-W#warnings]
#warning TODO  Add global incremental block header merkle   https://github.com/EOSIO/eos/issues/8
 ^
/home/give/eos/libraries/chain/wasm_interface.cpp:199:15: warning: unused variable 'end' [-Wunused-variable]
  const char* end = &Runtime::memoryRef<const char>( Runtime::getDefaultMemory(wasm_interface::get().current_module), charptr+size);
              ^
/home/give/eos/libraries/chain/wasm_interface.cpp:213:10: warning: unused variable 'c' [-Wunused-variable]
   char& c = Runtime::memoryRef<char>( Runtime::getDefaultMemory(wasm_interface::get().current_module), charptr );
         ^
/home/give/eos/libraries/chain/wasm_interface.cpp:355:2: warning: TODO: free existing module if the code has been updated, currently leak memory [-W#warnings]
#warning TODO: free existing module if the code has been updated, currently leak memory
 ^
In file included from /home/give/eos/libraries/chain/chain_controller.cpp:40:
/home/give/eos/libraries/utilities/include/eos/utilities/randutils.hpp:456:28: warning: unused variable 'compile_stamp' [-Wunused-variable]
        constexpr uint32_t compile_stamp =
                           ^
/home/give/eos/libraries/chain/chain_controller.cpp:368:2: warning: TODO: Populate generated blocks with generated transactions [-W#warnings]
#warning TODO: Populate generated blocks with generated transactions
 ^
/home/give/eos/libraries/chain/chain_controller.cpp:470:2: warning: TODO: Process generated transaction [-W#warnings]
#warning TODO: Process generated transaction
 ^
/home/give/eos/libraries/chain/chain_controller.cpp:469:26: warning: unused variable 'trx' [-Wunused-variable]
         for(const auto& trx : thread.generated_input ) {
                         ^
/home/give/eos/libraries/chain/chain_controller.cpp:452:13: warning: unused variable 'next_block_num' [-Wunused-variable]
   uint32_t next_block_num = next_block.block_num();
            ^
/home/give/eos/libraries/chain/wasm_interface.cpp:44:10: error: no matching function for call to 'memcpy'
         memcpy( o.value.data(), value, valuelen );
         ^~~~~~
/opt/boost160/include/boost/multi_index_container.hpp:813:5: note: in instantiation of function template specialization
      'eos::chain::storenonei32i32i32i32(NativeTypes::i32, NativeTypes::i32, NativeTypes::i32, NativeTypes::i32)::(anonymous
      class)::operator()<eos::chain::key_value_object>' requested here
    mod(const_cast<value_type&>(x->value()));
    ^
/opt/boost160/include/boost/multi_index/detail/index_base.hpp:276:21: note: in instantiation of function template specialization
      'boost::multi_index::multi_index_container<eos::chain::key_value_object,
      boost::multi_index::indexed_by<boost::multi_index::ordered_unique<boost::multi_index::tag<by_id, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
      boost::multi_index::member<eos::chain::key_value_object, chainbase::oid<eos::chain::key_value_object>, &eos::chain::key_value_object::id>, mpl_::na>,
      boost::multi_index::ordered_unique<boost::multi_index::tag<eos::chain::by_scope_key, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
      boost::multi_index::composite_key<eos::chain::key_value_object, boost::multi_index::member<eos::chain::key_value_object, fc::fixed_string<fc::array<unsigned long, 4>
      >, &eos::chain::key_value_object::scope>, boost::multi_index::member<eos::chain::key_value_object, boost::container::basic_string<char, std::char_traits<char>,
      boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family,
      boost::interprocess::offset_ptr<void, long, unsigned long, 0>, 0>, iset_index> > >, &eos::chain::key_value_object::key>, boost::tuples::null_type,
      boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
      boost::tuples::null_type>, boost::multi_index::composite_key_compare<std::less<fc::fixed_string<fc::array<unsigned long, 4> > >, chainbase::strcmp_less,
      boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
      boost::tuples::null_type, boost::tuples::null_type> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::interprocess::allocator<eos::chain::key_value_object,
      boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long,
      unsigned long, 0>, 0>, iset_index> > >::modify_<(lambda at /home/give/eos/libraries/chain/wasm_interface.cpp:42:24)>' requested here
    {return final().modify_(mod,x);}
                    ^
/opt/boost160/include/boost/multi_index/detail/ord_index_impl.hpp:418:18: note: in instantiation of function template specialization
      'boost::multi_index::detail::index_base<eos::chain::key_value_object,
      boost::multi_index::indexed_by<boost::multi_index::ordered_unique<boost::multi_index::tag<by_id, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
      boost::multi_index::member<eos::chain::key_value_object, chainbase::oid<eos::chain::key_value_object>, &eos::chain::key_value_object::id>, mpl_::na>,
      boost::multi_index::ordered_unique<boost::multi_index::tag<eos::chain::by_scope_key, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
      boost::multi_index::composite_key<eos::chain::key_value_object, boost::multi_index::member<eos::chain::key_value_object, fc::fixed_string<fc::array<unsigned long, 4>
      >, &eos::chain::key_value_object::scope>, boost::multi_index::member<eos::chain::key_value_object, boost::container::basic_string<char, std::char_traits<char>,
      boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family,
      boost::interprocess::offset_ptr<void, long, unsigned long, 0>, 0>, iset_index> > >, &eos::chain::key_value_object::key>, boost::tuples::null_type,
      boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
      boost::tuples::null_type>, boost::multi_index::composite_key_compare<std::less<fc::fixed_string<fc::array<unsigned long, 4> > >, chainbase::strcmp_less,
      boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
      boost::tuples::null_type, boost::tuples::null_type> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::interprocess::allocator<eos::chain::key_value_object,
      boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long,
      unsigned long, 0>, 0>, iset_index> > >::final_modify_<(lambda at /home/give/eos/libraries/chain/wasm_interface.cpp:42:24)>' requested here
    return this->final_modify_(
                 ^
/home/give/eos/libraries/chainbase/include/chainbase/chainbase.hpp:227:32: note: in instantiation of function template specialization
      'boost::multi_index::detail::ordered_index_impl<boost::multi_index::member<eos::chain::key_value_object, chainbase::oid<eos::chain::key_value_object>,
      &eos::chain::key_value_object::id>, std::less<chainbase::oid<eos::chain::key_value_object> >, boost::multi_index::detail::nth_layer<1, eos::chain::key_value_object,
      boost::multi_index::indexed_by<boost::multi_index::ordered_unique<boost::multi_index::tag<by_id, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
      boost::multi_index::member<eos::chain::key_value_object, chainbase::oid<eos::chain::key_value_object>, &eos::chain::key_value_object::id>, mpl_::na>,
      boost::multi_index::ordered_unique<boost::multi_index::tag<eos::chain::by_scope_key, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
      boost::multi_index::composite_key<eos::chain::key_value_object, boost::multi_index::member<eos::chain::key_value_object, fc::fixed_string<fc::array<unsigned long, 4>
      >, &eos::chain::key_value_object::scope>, boost::multi_index::member<eos::chain::key_value_object, boost::container::basic_string<char, std::char_traits<char>,
      boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family,
      boost::interprocess::offset_ptr<void, long, unsigned long, 0>, 0>, iset_index> > >, &eos::chain::key_value_object::key>, boost::tuples::null_type,
      boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
      boost::tuples::null_type>, boost::multi_index::composite_key_compare<std::less<fc::fixed_string<fc::array<unsigned long, 4> > >, chainbase::strcmp_less,
      boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
      boost::tuples::null_type, boost::tuples::null_type> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::interprocess::allocator<eos::chain::key_value_object,
      boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long,
      unsigned long, 0>, 0>, iset_index> > >, boost::mpl::v_item<by_id, boost::mpl::vector0<mpl_::na>, 0>, boost::multi_index::detail::ordered_unique_tag,
      boost::multi_index::detail::null_augment_policy>::modify<(lambda at /home/give/eos/libraries/chain/wasm_interface.cpp:42:24)>' requested here
            auto ok = _indices.modify( _indices.iterator_to( obj ), m );
                               ^
/home/give/eos/libraries/chainbase/include/chainbase/chainbase.hpp:861:46: note: in instantiation of function template specialization
      'chainbase::generic_index<boost::multi_index::multi_index_container<eos::chain::key_value_object,
      boost::multi_index::indexed_by<boost::multi_index::ordered_unique<boost::multi_index::tag<by_id, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
      boost::multi_index::member<eos::chain::key_value_object, chainbase::oid<eos::chain::key_value_object>, &eos::chain::key_value_object::id>, mpl_::na>,
      boost::multi_index::ordered_unique<boost::multi_index::tag<eos::chain::by_scope_key, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
      boost::multi_index::composite_key<eos::chain::key_value_object, boost::multi_index::member<eos::chain::key_value_object, fc::fixed_string<fc::array<unsigned long, 4>
      >, &eos::chain::key_value_object::scope>, boost::multi_index::member<eos::chain::key_value_object, boost::container::basic_string<char, std::char_traits<char>,
      boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family,
      boost::interprocess::offset_ptr<void, long, unsigned long, 0>, 0>, iset_index> > >, &eos::chain::key_value_object::key>, boost::tuples::null_type,
      boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
      boost::tuples::null_type>, boost::multi_index::composite_key_compare<std::less<fc::fixed_string<fc::array<unsigned long, 4> > >, chainbase::strcmp_less,
      boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
      boost::tuples::null_type, boost::tuples::null_type> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
      mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::interprocess::allocator<eos::chain::key_value_object,
      boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long,
      unsigned long, 0>, 0>, iset_index> > > >::modify<(lambda at /home/give/eos/libraries/chain/wasm_interface.cpp:42:24) &>' requested here
             get_mutable_index<index_type>().modify( obj, m );
                                             ^
/home/give/eos/libraries/chain/wasm_interface.cpp:42:10: note: in instantiation of function template specialization
      'chainbase::database::modify<eos::chain::key_value_object, (lambda at /home/give/eos/libraries/chain/wasm_interface.cpp:42:24)>' requested here
      db.modify( *obj, [&]( auto& o ) {
         ^
/usr/include/string.h:46:14: note: candidate function not viable: no known conversion from 'const char *' to 'void *__restrict' for 1st argument
extern void *memcpy (void *__restrict __dest, const void *__restrict __src,
             ^
6 warnings and 1 error generated.
libraries/chain/CMakeFiles/eos_chain.dir/build.make:86: recipe for target 'libraries/chain/CMakeFiles/eos_chain.dir/wasm_interface.cpp.o' failed
make[2]: *** [libraries/chain/CMakeFiles/eos_chain.dir/wasm_interface.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
2 warnings generated.
6 warnings generated.
CMakeFiles/Makefile2:1279: recipe for target 'libraries/chain/CMakeFiles/eos_chain.dir/all' failed
make[1]: *** [libraries/chain/CMakeFiles/eos_chain.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
give@debian:~/eos/build$

Any advice?

@nathanielhourt
Copy link
Contributor

@jemekite Someone else has seen that error too; try replacing the memcpy line with this:
o.value.replace (0, valuelen, value);
Let me know if that solves it for you.

@jemekite
Copy link

Thanks @nathanhourt, Build passed after changing that line, but I have 4 error when running chain_test,

Log:

/home/give/eos/tests/tests/database_tests.cpp(210): error: in "producer_voting": check boost::find(gpo.active_producers, "joe") != gpo.active_producers.end() has failed
/home/give/eos/tests/tests/misc_tests.cpp(52): error: in "misc_tests/deterministic_randomness": check fc::json::to_string(words) == fc::json::to_string(vector<string>{"potters","hal9000","memorizes","infamy","invests","estimated"}) has failed [["infamy","hal9000","invests","estimated","memorizes","potters"] != ["potters","hal9000","memorizes","infamy","invests","estimated"]]
/home/give/eos/tests/tests/misc_tests.cpp(55): error: in "misc_tests/deterministic_randomness": check fc::json::to_string(words) == fc::json::to_string(vector<string>{"memorizes","hal9000","infamy","invests","estimated","potters"}) has failed [["infamy","hal9000","memorizes","estimated","potters","invests"] != ["memorizes","hal9000","infamy","invests","estimated","potters"]]
976106ms thread-0   block_log.cpp:88              open                 ] Opening block log at /tmp/8aa4-c24a-8a31-2447/blocklog/blocks.log
976137ms thread-0   block_log.cpp:88              open                 ] Opening block log at /tmp/617f-a511-2cb7-eebe/blocklog/blocks.log
976169ms thread-0   block_log.cpp:88              open                 ] Opening block log at /tmp/426d-2bc8-62e0-7b0a/blocklog/blocks.log
struct Foo
bar String
976198ms thread-0   TypeParser.cpp:72             parse                ] line_tokens: ["bar","String"]
baz Int8
976198ms thread-0   TypeParser.cpp:72             parse                ] line_tokens: ["baz","Int8"]
struct Bar
foo Int32
976198ms thread-0   TypeParser.cpp:72             parse                ] line_tokens: ["foo","Int32"]
baz Signature
976198ms thread-0   TypeParser.cpp:72             parse                ] line_tokens: ["baz","Signature"]
typedef Bar Baz
typedef Baz Qux

*** 4 failures are detected (1 failure is expected) in the test module "Master Test Suite"

complete logs is here: https://pastebin.com/cZzTYwdT
Is this Okay?

@nathanielhourt
Copy link
Contributor

Uh oh, those errors in deterministic_randomness are disconcerting... But I'm dead in the water right now, as long as I can't build, I can't do much with these errors.

@nathanielhourt
Copy link
Contributor

OK, I'm building again! :)

@jemekite Please make a new issue for the deterministic_randomness test failures, and include in that issue a description of your environment including OS, compiler, and version. Please include the output of chain_test -t misc_tests/deterministic_randomness on this issue.

The producer_voting error is the expected failure, so we don't need to worry about that right now.

You've got one more that seems to be happening in another test. Please create an issue for that as well, and include the output of chain_test -t block_tests/create_script.

@jemekite
Copy link

Here you go ;) #34

@bitcoiners
Copy link

I too have a make problem. Trying to build on Ubuntu 64 bit.

$ make
[ 26%] Built target fc
[ 27%] Built target chainbase
[ 28%] Built target chainbase_test
[ 29%] Built target Platform
[ 30%] Built target Logging
[ 33%] Built target IR
[ 40%] Built target Runtime
[ 41%] Built target Emscripten
[ 42%] Built target WASM
[ 48%] Built target WAST
[ 49%] Built target Disassemble
[ 50%] Built target Test
[ 51%] Built target Assemble
[ 52%] Built target wavm
[ 57%] Built target wren
[ 59%] Built target wrenbase
[ 60%] Built target test
[ 63%] Built target eos_utilities
[ 66%] Built target type_generator
[ 69%] Built target eos_types
[ 70%] Built target types_test
[ 71%] Building CXX object libraries/chain/CMakeFiles/eos_chain.dir/chain_controller.cpp.o
In file included from /home/slava/dev/eos/libraries/chain/chain_controller.cpp:25:0:
/home/slava/dev/eos/libraries/chain/include/eos/chain/chain_controller.hpp:84:2: warning: #warning QUESTION Should we be setting o.base_scope here? [-Wcpp]
#warning QUESTION Should we be setting o.base_scope here?
^~~~~~~
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:368:2: warning: #warning TODO: Populate generated blocks with generated transactions [-Wcpp]
#warning TODO: Populate generated blocks with generated transactions
^~~~~~~
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:470:2: warning: #warning TODO: Process generated transaction [-Wcpp]
#warning TODO: Process generated transaction
^~~~~~~
/home/slava/dev/eos/libraries/chain/chain_controller.cpp: In member function ‘void eos::chain::chain_controller::_apply_block(const eos::chain::signed_block&)’:
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:469:26: warning: unused variable ‘trx’ [-Wunused-variable]
for(const auto& trx : thread.generated_input ) {
^~~
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:452:13: warning: unused variable ‘next_block_num’ [-Wunused-variable]
uint32_t next_block_num = next_block.block_num();
^~~~~~~~~~~~~~
/home/slava/dev/eos/libraries/chain/chain_controller.cpp: In member function ‘void eos::chain::chain_controller::update_last_irreversible_block()’:
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:1032:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (last_block_on_disk < new_last_irreversible_block_num)
~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:1034:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
block_to_write <= new_last_irreversible_block_num;
~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/slava/dev/eos/libraries/chain/chain_controller.cpp: In instantiation of ‘eos::chain::chain_controller::initialize_chain(eos::chain::chain_initializer_interface&)::<lambda()>::<lambda(const auto:3&)> [with auto:3 = eos::chain::Message]’:
/usr/include/c++/6/bits/stl_algo.h:3769:5: required from ‘_Funct std::for_each(_IIter, _IIter, _Funct) [with _IIter = __gnu_cxx::__normal_iterator<eos::chain::Message*, std::vectoreos::chain::Message >; _Funct = eos::chain::chain_controller::initialize_chain(eos::chain::chain_initializer_interface&)::<lambda()>::<lambda(const auto:3&)>]’
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:829:103: required from here
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:829:82: error: cannot call member function ‘void eos::chain::chain_controller::process_message(eos::chain::Message)’ without object
std::for_each(messages.begin(), messages.end(), [this](const auto& m) { process_message(m); });
^~~~~~~~~~~~~~~
libraries/chain/CMakeFiles/eos_chain.dir/build.make:62: recipe for target 'libraries/chain/CMakeFiles/eos_chain.dir/chain_controller.cpp.o' failed
make[2]: *** [libraries/chain/CMakeFiles/eos_chain.dir/chain_controller.cpp.o] Error 1
CMakeFiles/Makefile2:1279: recipe for target 'libraries/chain/CMakeFiles/eos_chain.dir/all' failed
make[1]: *** [libraries/chain/CMakeFiles/eos_chain.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

@nathanielhourt
Copy link
Contributor

@bitcoiners What compiler/version?

@bitcoiners
Copy link

bitcoiners commented Jun 22, 2017

Ubuntu 17.04
gcc --version
gcc (Ubuntu/Linaro 6.3.0-18ubuntu2) 6.3.0 20170519
clang -v
clang version 4.0.1-+rc3-1 (tags/RELEASE_401/rc3)
Target: x86_64-pc-linux-gnu

@peterwillcn
Copy link
Contributor

peterwillcn commented Jun 22, 2017

ubuntu 16.04
clang -v
clang version 4.0.1-svn305187-1~exp1 (branches/release_40)
Target: x86_64-pc-linux-gnu
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
.......
[ 73%] Building CXX object libraries/chain/CMakeFiles/eos_chain.dir/wasm_interface.cpp.o
 /home/eos/libraries/chain/wasm_interface.cpp:43:10: error: no matching function for call to 'memcpy'
         memcpy( o.value.data(), value, valuelen );
         ^~~~~~
/usr/include/boost/multi_index_container.hpp:813:5: note: in instantiation of function template specialization 'eos::chain::storenonei32i32i32i32(NativeTypes::i32,
      NativeTypes::i32, NativeTypes::i32, NativeTypes::i32)::(anonymous class)::operator()<eos::chain::key_value_object>' requested here
    mod(const_cast<value_type&>(x->value()));
    ^
.....
 in instantiation of function template specialization
      'chainbase::database::modify<eos::chain::key_value_object, (lambda at /home/eos/libraries/chain/wasm_interface.cpp:41:24)>' requested here
      db.modify( *obj, [&]( auto& o ) {
         ^
/usr/include/string.h:42:14: note: candidate function not viable: no known conversion from 'const char *' to 'void *__restrict' for 1st argument
extern void *memcpy (void *__restrict __dest, const void *__restrict __src,
             ^
6 warnings and 1 error generated.
libraries/chain/CMakeFiles/eos_chain.dir/build.make:86: recipe for target 'libraries/chain/CMakeFiles/eos_chain.dir/wasm_interface.cpp.o' failed
make[2]: *** [libraries/chain/CMakeFiles/eos_chain.dir/wasm_interface.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
6 warnings generated.
CMakeFiles/Makefile2:1121: recipe for target 'libraries/chain/CMakeFiles/eos_chain.dir/all' failed
make[1]: *** [libraries/chain/CMakeFiles/eos_chain.dir/all] Error 2
Makefile:127: recipe for target 'all' failed

@nathanielhourt
Copy link
Contributor

nathanielhourt commented Jun 22, 2017

@bitcoiners Which compiler are you using? If g++, try with clang by passing -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang to cmake.

@peterwillcn That should be fixed now; let me know if you still have trouble

@bitcoiners
Copy link

bitcoiners commented Jun 23, 2017

passing -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang to clang

now getting new error

Scanning dependencies of target eos_chain
[ 67%] Building CXX object libraries/chain/CMakeFiles/eos_chain.dir/chain_controller.cpp.o
In file included from /home/slava/dev/eos/libraries/chain/chain_controller.cpp:25:
/home/slava/dev/eos/libraries/chain/include/eos/chain/chain_controller.hpp:84:2: warning: QUESTION Should we be setting o.base_scope here? [-W#warnings]
#warning QUESTION Should we be setting o.base_scope here?
^
In file included from /home/slava/dev/eos/libraries/chain/chain_controller.cpp:40:
/home/slava/dev/eos/libraries/utilities/include/eos/utilities/randutils.hpp:456:28: warning: unused variable 'compile_stamp' [-Wunused-variable]
constexpr uint32_t compile_stamp =
^
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:370:2: warning: TODO: Populate generated blocks with generated transactions [-W#warnings]
#warning TODO: Populate generated blocks with generated transactions
^
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:478:2: warning: TODO: Process generated transaction [-W#warnings]
#warning TODO: Process generated transaction
^
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:477:26: warning: unused variable 'trx' [-Wunused-variable]
for(const auto& trx : thread.generated_input ) {
^
/home/slava/dev/eos/libraries/chain/chain_controller.cpp:460:13: warning: unused variable 'next_block_num' [-Wunused-variable]
uint32_t next_block_num = next_block.block_num();
^
6 warnings generated.
[ 68%] Building CXX object libraries/chain/CMakeFiles/eos_chain.dir/wasm_interface.cpp.o
/home/slava/dev/eos/libraries/chain/wasm_interface.cpp:83:2: warning: TODO: wasm memcpy has undefined behavior if memory ranges overlap [-W#warnings]
#warning TODO: wasm memcpy has undefined behavior if memory ranges overlap
^
/home/slava/dev/eos/libraries/chain/wasm_interface.cpp:80:10: warning: unused variable 'dst_end' [-Wunused-variable]
char* dst_end = &memoryRef( mem, dstp+uint32_t(len));
^
/home/slava/dev/eos/libraries/chain/wasm_interface.cpp:81:16: warning: unused variable 'src_end' [-Wunused-variable]
const char* src_end = &memoryRef( mem, srcp+uint32_t(len) );
^
/home/slava/dev/eos/libraries/chain/wasm_interface.cpp:200:15: warning: unused variable 'end' [-Wunused-variable]
const char* end = &Runtime::memoryRef( Runtime::getDefaultMemory(wasm_interface::get().current_module), charptr+size);
^
/home/slava/dev/eos/libraries/chain/wasm_interface.cpp:214:10: warning: unused variable 'c' [-Wunused-variable]
char& c = Runtime::memoryRef( Runtime::getDefaultMemory(wasm_interface::get().current_module), charptr );
^
/home/slava/dev/eos/libraries/chain/wasm_interface.cpp:356:2: warning: TODO: free existing module if the code has been updated, currently leak memory [-W#warnings]
#warning TODO: free existing module if the code has been updated, currently leak memory
^
/home/slava/dev/eos/libraries/chain/wasm_interface.cpp:43:10: error: no matching function for call to 'memcpy'
memcpy( o.value.data(), value, valuelen );
^~~~~~
/usr/include/boost/multi_index_container.hpp:813:5: note: in instantiation of function template specialization 'eos::chain::storenonei32i32i32i32(NativeTypes::i32,
NativeTypes::i32, NativeTypes::i32, NativeTypes::i32)::(anonymous class)::operator()eos::chain::key_value_object' requested here
mod(const_cast<value_type&>(x->value()));
^
/usr/include/boost/multi_index/detail/index_base.hpp:276:21: note: in instantiation of function template specialization
'boost::multi_index::multi_index_container<eos::chain::key_value_object, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<boost::multi_index::tag<by_id,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na>, boost::multi_index::member<eos::chain::key_value_object, chainbase::oideos::chain::key_value_object, &eos::chain::key_value_object::id>, mpl_::na>,
boost::multi_index::ordered_unique<boost::multi_index::tag<eos::chain::by_scope_key, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::multi_index::composite_key<eos::chain::key_value_object, boost::multi_index::member<eos::chain::key_value_object, fc::fixed_string<fc::array<unsigned long, 4> >,
&eos::chain::key_value_object::scope>, boost::multi_index::member<eos::chain::key_value_object, boost::container::basic_string<char, std::char_traits,
boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family,
boost::interprocess::offset_ptr<void, long, unsigned long, 0>, 0>, iset_index> > >, &eos::chain::key_value_object::key>, boost::tuples::null_type,
boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
boost::tuples::null_type>, boost::multi_index::composite_key_compare<std::less<fc::fixed_string<fc::array<unsigned long, 4> > >, chainbase::strcmp_less,
boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
boost::tuples::null_type, boost::tuples::null_type> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::interprocess::allocator<eos::chain::key_value_object,
boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long, unsigned
long, 0>, 0>, iset_index> > >::modify_<(lambda at /home/slava/dev/eos/libraries/chain/wasm_interface.cpp:41:24)>' requested here
{return final().modify_(mod,x);}
^
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:418:18: note: in instantiation of function template specialization
'boost::multi_index::detail::index_base<eos::chain::key_value_object, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<boost::multi_index::tag<by_id,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na>, boost::multi_index::member<eos::chain::key_value_object, chainbase::oideos::chain::key_value_object, &eos::chain::key_value_object::id>, mpl_::na>,
boost::multi_index::ordered_unique<boost::multi_index::tag<eos::chain::by_scope_key, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::multi_index::composite_key<eos::chain::key_value_object, boost::multi_index::member<eos::chain::key_value_object, fc::fixed_string<fc::array<unsigned long, 4> >,
&eos::chain::key_value_object::scope>, boost::multi_index::member<eos::chain::key_value_object, boost::container::basic_string<char, std::char_traits,
boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family,
boost::interprocess::offset_ptr<void, long, unsigned long, 0>, 0>, iset_index> > >, &eos::chain::key_value_object::key>, boost::tuples::null_type,
boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
boost::tuples::null_type>, boost::multi_index::composite_key_compare<std::less<fc::fixed_string<fc::array<unsigned long, 4> > >, chainbase::strcmp_less,
boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
boost::tuples::null_type, boost::tuples::null_type> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::interprocess::allocator<eos::chain::key_value_object,
boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long, unsigned
long, 0>, 0>, iset_index> > >::final_modify_<(lambda at /home/slava/dev/eos/libraries/chain/wasm_interface.cpp:41:24)>' requested here
return this->final_modify_(
^
/home/slava/dev/eos/libraries/chainbase/include/chainbase/chainbase.hpp:227:32: note: in instantiation of function template specialization
'boost::multi_index::detail::ordered_index_impl<boost::multi_index::member<eos::chain::key_value_object, chainbase::oideos::chain::key_value_object,
&eos::chain::key_value_object::id>, std::less<chainbase::oideos::chain::key_value_object >, boost::multi_index::detail::nth_layer<1, eos::chain::key_value_object,
boost::multi_index::indexed_by<boost::multi_index::ordered_unique<boost::multi_index::tag<by_id, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::multi_index::member<eos::chain::key_value_object, chainbase::oideos::chain::key_value_object, &eos::chain::key_value_object::id>, mpl_::na>,
boost::multi_index::ordered_unique<boost::multi_index::tag<eos::chain::by_scope_key, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::multi_index::composite_key<eos::chain::key_value_object, boost::multi_index::member<eos::chain::key_value_object, fc::fixed_string<fc::array<unsigned long, 4> >,
&eos::chain::key_value_object::scope>, boost::multi_index::member<eos::chain::key_value_object, boost::container::basic_string<char, std::char_traits,
boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family,
boost::interprocess::offset_ptr<void, long, unsigned long, 0>, 0>, iset_index> > >, &eos::chain::key_value_object::key>, boost::tuples::null_type,
boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
boost::tuples::null_type>, boost::multi_index::composite_key_compare<std::less<fc::fixed_string<fc::array<unsigned long, 4> > >, chainbase::strcmp_less,
boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
boost::tuples::null_type, boost::tuples::null_type> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::interprocess::allocator<eos::chain::key_value_object,
boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long, unsigned
long, 0>, 0>, iset_index> > >, boost::mpl::v_item<by_id, boost::mpl::vector0<mpl_::na>, 0>, boost::multi_index::detail::ordered_unique_tag,
boost::multi_index::detail::null_augment_policy>::modify<(lambda at /home/slava/dev/eos/libraries/chain/wasm_interface.cpp:41:24)>' requested here
auto ok = indices.modify( indices.iterator_to( obj ), m );
^
/home/slava/dev/eos/libraries/chainbase/include/chainbase/chainbase.hpp:861:46: note: in instantiation of function template specialization
'chainbase::generic_index<boost::multi_index::multi_index_container<eos::chain::key_value_object,
boost::multi_index::indexed_by<boost::multi_index::ordered_unique<boost::multi_index::tag<by_id, mpl
::na, mpl
::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::multi_index::member<eos::chain::key_value_object, chainbase::oideos::chain::key_value_object, &eos::chain::key_value_object::id>, mpl_::na>,
boost::multi_index::ordered_unique<boost::multi_index::tag<eos::chain::by_scope_key, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::multi_index::composite_key<eos::chain::key_value_object, boost::multi_index::member<eos::chain::key_value_object, fc::fixed_string<fc::array<unsigned long, 4> >,
&eos::chain::key_value_object::scope>, boost::multi_index::member<eos::chain::key_value_object, boost::container::basic_string<char, std::char_traits,
boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family,
boost::interprocess::offset_ptr<void, long, unsigned long, 0>, 0>, iset_index> > >, &eos::chain::key_value_object::key>, boost::tuples::null_type,
boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
boost::tuples::null_type>, boost::multi_index::composite_key_compare<std::less<fc::fixed_string<fc::array<unsigned long, 4> > >, chainbase::strcmp_less,
boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type,
boost::tuples::null_type, boost::tuples::null_type> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::interprocess::allocator<eos::chain::key_value_object,
boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long, unsigned
long, 0>, 0>, iset_index> > > >::modify<(lambda at /home/slava/dev/eos/libraries/chain/wasm_interface.cpp:41:24) &>' requested here
get_mutable_index<index_type>().modify( obj, m );
^
/home/slava/dev/eos/libraries/chain/wasm_interface.cpp:41:10: note: in instantiation of function template specialization
'chainbase::database::modify<eos::chain::key_value_object, (lambda at /home/slava/dev/eos/libraries/chain/wasm_interface.cpp:41:24)>' requested here
db.modify( *obj, [&]( auto& o ) {
^
/usr/include/string.h:42:14: note: candidate function not viable: no known conversion from 'const char *' to 'void *__restrict' for 1st argument
extern void *memcpy (void *__restrict __dest, const void *__restrict __src,
^
6 warnings and 1 error generated.
libraries/chain/CMakeFiles/eos_chain.dir/build.make:86: recipe for target 'libraries/chain/CMakeFiles/eos_chain.dir/wasm_interface.cpp.o' failed
make[2]: *** [libraries/chain/CMakeFiles/eos_chain.dir/wasm_interface.cpp.o] Error 1
CMakeFiles/Makefile2:1121: recipe for target 'libraries/chain/CMakeFiles/eos_chain.dir/all' failed
make[1]: *** [libraries/chain/CMakeFiles/eos_chain.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
`

@pmesnier
Copy link
Contributor

Hi, are you using boost 1.64? We upped the required version since at least the String classes did not supply a non-const data() accessor until 1.64. Perhaps that's the case with other containers too.

@nathanielhourt
Copy link
Contributor

@peterwillcn You don't include the error in that log, so I have no idea what's going wrong. :P

@bitcoiners Pull the latest and try again; that error should be fixed.

And yes, everybody make sure you're on boost 1.64 :)

@bitcoiners
Copy link

thanks, pulling latest helped, build works now.

@dmf7z
Copy link
Contributor

dmf7z commented Jun 25, 2017

Same experience here. Compiles ok with clang but not g++.

One of many reasons project does not compile with g++ is because this bug in the compiler:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67274

That is why this line fails: eos/libraries/chain/chain_controller.cpp:829

std::for_each(messages.begin(), messages.end(), [this](const auto& m) { process_message(m); });

More info here: https://stackoverflow.com/questions/32097759/calling-this-member-function-from-generic-lambda-clang-vs-gcc

Changing it to

std::for_each(messages.begin(), messages.end(), [this](const Message& m) { process_message(m); });

fixes it, but there is still more work to do to make it compile with g++

@dmf7z
Copy link
Contributor

dmf7z commented Jun 25, 2017

Created PR to make it compile with g++: #41
Tried with version 5.4

@peterwillcn
Copy link
Contributor

[ 61%] Building CXX object libraries/wasm-jit/Source/Programs/CMakeFiles/Disassemble.dir/Disassemble.cpp.o
/tmp/eos/plugins/database_plugin/database_plugin.cpp:52:13: error: no matching constructor for initialization of 'chainbase::database'
   my->db = chainbase::database(my->shared_memory_dir,
            ^                   ~~~~~~~~~~~~~~~~~~~~~~
/tmp/eos/libraries/chainbase/include/chainbase/chainbase.hpp:651:10: note: candidate constructor (the implicit move constructor) not viable: requires 1 argument, but 3 were provided
   class database
         ^
/tmp/eos/libraries/chainbase/include/chainbase/chainbase.hpp:651:10: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 3 were provided
/tmp/eos/libraries/chainbase/include/chainbase/chainbase.hpp:651:10: note: candidate constructor (the implicit default constructor) not viable: requires 0 arguments, but 3 were provided
1 error generated.
plugins/database_plugin/CMakeFiles/database_plugin.dir/build.make:62: recipe for target 'plugins/database_plugin/CMakeFiles/database_plugin.dir/database_plugin.cpp.o' failed
make[2]: *** [plugins/database_plugin/CMakeFiles/database_plugin.dir/database_plugin.cpp.o] Error 1
make[1]: *** [plugins/database_plugin/CMakeFiles/database_plugin.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

@pmesnier
Copy link
Contributor

Hi @peterwillcn, how do you update your repository from github? Do you do a git pull or do you do git fetch / git rebase? I do the latter and I see that oddly the rebase ends up re-applying a May 28 patch by @nathanhourt which defines the ctor you lack. Even stranger, this patch isn't included in EOSIO/chainbase history for chainbase.hpp. Here's the description for the missing commit:

commit d54f69a81ad3597785aa6e2f84f5ae905f203047
Author: Nathan Hourt nat.hourt@gmail.com
Date: Sun May 28 20:48:09 2017 -0500

Refactor database for RAII compliance

Make chainbase::database implement RAII by having the constructor open and the destructor close.
As long as the database is constructed, it should be properly open and ready to use.

Nathan, does that ring a bell? I sure don't remember where I fetched that from. But that it is not in the github chain for chainbase.hpp explains why my local git reapplies it after a rebase.

@peterwillcn
Copy link
Contributor

peterwillcn commented Jun 28, 2017

@nathanielhourt
Copy link
Contributor

I'm not sure what happened here... but I merged the preq. Is everything in order now?

@peterwillcn
Copy link
Contributor

peterwillcn commented Jun 28, 2017

@nathanhourt Great, everything works now.

@nathanielhourt
Copy link
Contributor

Great! I'm closing this issue since it's been home to several errors which may or may not be fixed. Create a new issue if something is still broken.

@sionnow0
Copy link

sionnow0 commented Oct 11, 2017

./build.sh ubuntu full

…………

-- Installing: /root/opt/wasm/lib/cmake/llvm/./HandleLLVMOptions.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./LLVMInstallSymlink.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./TableGen.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./CheckCompilerVersion.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./HandleLLVMStdlib.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./CheckLinkerFlag.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./CrossCompile.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./GetSVN.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./AddLLVM.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./AddOCaml.cmake
-- Installing: /root/opt/wasm/lib/cmake/llvm/./LLVMExternalProjectUtils.cmake
-- The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:2 (project):
The CMAKE_CXX_COMPILER:

clang++-4.0

is not a full path and was not found in the PATH.

Tell CMake where to find the compiler by setting either the environment
variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
to the compiler, or to the compiler name if it is in the PATH.

-- Configuring incomplete, errors occurred!
See also "/home/eos_new/eos/build/CMakeFiles/CMakeOutput.log".
See also "/home/eos_new/eos/build/CMakeFiles/CMakeError.log".
make: *** No targets specified and no makefile found. Stop.

============================
Ubuntu 14.04.5 LTS
gcc --version
gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
clang -v
clang version 4.0.0 (tags/RELEASE_400/final)
Target: x86_64-unknown-linux-gnu
cmake --version
cmake version 3.9.0

can you help me ?

taokayan pushed a commit to taokayan/eos that referenced this issue Nov 29, 2018
add_index ensures that the undo stack and revision of the added index are consistent with the other indices in the database
qianxiaofeng pushed a commit to eosiosg/eos that referenced this issue Jan 12, 2019
…ime throws exception (EOSIO#23)

* restart sync list db

* recovery system account bos to eosio

* catch exception plugin initialize sync list before initialize database
qianxiaofeng pushed a commit to eosiosg/eos that referenced this issue Mar 11, 2019
* state history plugin

* bump version to 1.5.0-rc1

* Update README to reflect new package names

* Change from 1.5.0 to 1.5.0-rc1

* Fix requires in spec file to resolve dependency resolution issues with rpms

* Fix requires in spec file to resolve dependency resolution issues with rpms

* Remove unneeded req_trx vector

* Remove needless copy of signed_block. Only create pending_notify if needed.

* Remove unused blk_buffer

* separate out version suffix so that RPM packages produce an acceptable specfile

* address PR review feedback

* Make signed_block copy constructor private to avoid accidental copies.

* add release suffix to doxygen cmake module

* move signed_block instead of making copy

* Avoid copy constructor for push_block

* add release suffix to EOSIO_VERSION in tester cmake modules

* Add which comment

* Update tests for private signed_block copy constructor

* Avoid making copies of signed_block

* export the new bash vars

* Use rvalue for signed_block

* Update buildkite pipeline to use new queues

* Update buildkite pipeline to use new queues

* Special case msg_handler visit of signed_block to avoid hidden move from net_message

* pass along trigger_send

* Use move for rvalue

* Added Mongo History API link

* Added ZMQ Light History API

* Added Chintai ZMQ Watcher

* Added State History API

* Stop the unix_server from listening in shutdown stage as well.

* finish BOS basic functions

* bump version to rc2

* update rpm names to match the real files

* Fix deb package names in README

* Fix package naming scheme for debs

* Update LICENSE path

* add a test that reduces the size of the producer set to validate that it does not create protocol level issues

* promote rc2 to release

* add missing release to deb packages

* remove x86_64 arch dep specification on AMI2 build script

I can't find any reason we need to explcitly request the x86_64 versions of packages for AMI2. Removing this apparently extraneous specification makes the build script "just work" on new ARM8 instances

* Use 64-bit float printing of 128-bit floats on non x86_64

For platforms other then x86_64, have the 128-bit float console print API (printqf()) convert to a 64-bit float before printing. While this loses precision it’s enough to get the unit tests for printqf() working on ARM8, which actually was the only unit_test unit test that failed on that platform.

* prebump to 1.6.0 and add develop suffix

* Do not broadcast block if peer lib is larger than block number

* Provide more efficient sha256_less

* Simply by removing unused large_msg_notify

* Remove unused node_transaction_state.packed_txn

* Store serialized transaction as shared_ptr to minimize copies

* Not possible for serialized_txn to be empty

* Remove find_plugin overhead

* Minimize shared_ptr copies

* Use sha256_less for all sets/maps with ids

* Add explicit constructors

* Add accept_transaction that takes a packed_transaction_ptr to avoid copy

* Pass id and packed_transaction by const& since never moved

* Remove copy assignment operator. Remove used std::move.

* Minimize packed_transaction copies. Store packed_transaction_ptr in transaction_metadata.

* Cache chain_plugin lookup

* Update tester for transaction_metadata packed_transaction_ptr

* Remove packed_tansaction to net_message copy

* Remove unused constructor

* Explicitly disable copy/move construction

* Remove inflight update of node_transaction_state as it is not needed

* Remove connections for unused signals that only logged

* Fix sync check for lib

* add a test that verifies proposing an empty producer schedule does not break things

* Allow disablement of net_plugin's listen socket

Disable net_plugin's listen socket when p2p-listen-endpoint is empty. This is useful for security and for an easier way of running multiple nodeos without it conflicting when you don't actually need to service incoming connections.

* More descriptive memo to distinguish from other transfers

* Revert "Fix sync check for lib"

This reverts commit 52a6f19.

* Update the bios-boot-tutorial.py script and readme.md:
1. args.contracts_dir doesn't end in a forward slash, therefor when it is concatenated with a subpath, the subpath has to start with a forward slash; this pattern is present in other similar variables as well
2. system contract has to be initialized before it can be used (e.g. creating staked acconts)
3. commands list updated to include the new addition stepInitSystemContract
4. readme.md updated as well to reflect the current status of the script and requirements

* Release/1.0.x (#11)

* boscore basic improvement (#2)

* kafka_plugin code

* Automatic installation librdkafka/cppkafka

* Feature/ci

* Feature/48 kafka plugin

* add CMakeModules/FindCppkafka.cmake

* Production of block in time zone sequence

* P2p self discovery

* P2p self discovery

* add notify_plugin

* add api "get_block_detail"

* add free res limit and blklst code

* update free res limit and blklst code

* update res code

* update unittest code

* revert submodule version

* code typo

* update  blklist code

* update sync name list db object error code

* update  code

* update  index code

* Feature/5 ramdom

* Revert "Merge branch 'feature/5-ramdom' into 'develop'"

This reverts merge request !8

* adjust for setup BOSCore

* change description

* adjust the kafka plugin dependency be more special

* use boscore repository to improve security

* change version tag

* finish for docker/builder

* pass to build docker and update readme

* add actionseed, global action sequence (#5)

* delete renamed old file

* BOSCore v1.0.1-1.4.3

* restructure the version schema

* fix __gmpn_set_str error when build bos.contract

* prepare for the v1.0.1

* add README files

* update info

* readme for kafka & add time for action (#5)

* 重启 节点,黑名单 失效,fixes #7 (#8)

* restart sync list db

* recovery system account bos to eosio

* recovery system account bos to eosio

* recovery system account bos to eosio

* Fix/#3 notify plugin (#10)

* Add debug info

* comment log

* rm log for notify_plugin

* README.md refactored
- correcting spelling errors, and caps
- better bash commands
- simpler command line to launch the script
- improved prerequisites
- include steps to follow after prerequisites

* Correct typos

* Correct link format

* Add eosio.cdt steps

* merge v1.0.2 (#13)

* boscore basic improvement (#2)

* kafka_plugin code

* Automatic installation librdkafka/cppkafka

* Feature/ci

* Feature/48 kafka plugin

* add CMakeModules/FindCppkafka.cmake

* Production of block in time zone sequence

* P2p self discovery

* P2p self discovery

* add notify_plugin

* add api "get_block_detail"

* add free res limit and blklst code

* update free res limit and blklst code

* update res code

* update unittest code

* revert submodule version

* code typo

* update  blklist code

* update sync name list db object error code

* update  code

* update  index code

* Feature/5 ramdom

* Revert "Merge branch 'feature/5-ramdom' into 'develop'"

This reverts merge request !8

* adjust for setup BOSCore

* change description

* adjust the kafka plugin dependency be more special

* use boscore repository to improve security

* change version tag

* finish for docker/builder

* pass to build docker and update readme

* add actionseed, global action sequence (#5)

* delete renamed old file

* BOSCore v1.0.1-1.4.3

* restructure the version schema

* fix __gmpn_set_str error when build bos.contract

* prepare for the v1.0.1

* add README files

* update info

* prepare for v1.0.2

* Better name for eosio contracts directory

* dummy checkin to trigger another build

* Added scrit to support recursive search for files with FC_REFLECT or FC_REFLECT_ENUM to verify order and completeness.  Supports comments with @swap to support different order from definition and @ignore to ignore a specific field for reflection.  Still need to support FC_REFLECT_DERIVED. GH EOSIO#3127

* Added @ignore comment for field that is left out of reflect definition. GH EOSIO#3127

* Fixed pull request comments.

* bump version to 1.5.1

* Consolidated Security Fixes for 1.5.1

- Only allow authorizations that are satisfiable by `eosio.code` for self-addressed deferred transactions
- Only allow authorizations that are satisfiable by `eosio.code` OR on the parent action for self-addressed inline actions sent from direct actions
- Only allow authorizations that are satisfiable by `eosio.code` for self-addressed inline actions sent from recipient handlers

Co-authored-by: arhag <arhag@users.noreply.github.com>
Co-authored-by: Bart Wyatt <bart.wyatt@block.one>

* Peer review changes. Fix move.

* Spelling correction

* Spelling correction #2

* Remove unused max-implicit-request config

* Switch interface from packed_transaction_ptr to transaction_metadata_ptr

* Thread pool does not need to be optional

* Add transaction_metadata create_signing_keys_future method

* Start transaction signature earily in thread pool

* Refactor packed_transaction for better encapsulation

* Add transaction_metadata create_signing_keys_future method

* Start transaction signature earily in thread pool

* Update txn_test_gen_plugin to overlap transaction submit @taokayan

* merge 1.0.3 to develop (#16)

* boscore basic improvement (#2)

* kafka_plugin code

* Automatic installation librdkafka/cppkafka

* Feature/ci

* Feature/48 kafka plugin

* add CMakeModules/FindCppkafka.cmake

* Production of block in time zone sequence

* P2p self discovery

* P2p self discovery

* add notify_plugin

* add api "get_block_detail"

* add free res limit and blklst code

* update free res limit and blklst code

* update res code

* update unittest code

* revert submodule version

* code typo

* update  blklist code

* update sync name list db object error code

* update  code

* update  index code

* Feature/5 ramdom

* Revert "Merge branch 'feature/5-ramdom' into 'develop'"

This reverts merge request !8

* adjust for setup BOSCore

* change description

* adjust the kafka plugin dependency be more special

* use boscore repository to improve security

* change version tag

* finish for docker/builder

* pass to build docker and update readme

* add actionseed, global action sequence (#5)

* delete renamed old file

* BOSCore v1.0.1-1.4.3

* restructure the version schema

* fix __gmpn_set_str error when build bos.contract

* prepare for the v1.0.1

* add README files

* update info

* prepare for v1.0.2

* merge v1.0.2 (#12)

* boscore basic improvement (#2)

* kafka_plugin code

* Automatic installation librdkafka/cppkafka

* Feature/ci

* Feature/48 kafka plugin

* add CMakeModules/FindCppkafka.cmake

* Production of block in time zone sequence

* P2p self discovery

* P2p self discovery

* add notify_plugin

* add api "get_block_detail"

* add free res limit and blklst code

* update free res limit and blklst code

* update res code

* update unittest code

* revert submodule version

* code typo

* update  blklist code

* update sync name list db object error code

* update  code

* update  index code

* Feature/5 ramdom

* Revert "Merge branch 'feature/5-ramdom' into 'develop'"

This reverts merge request !8

* adjust for setup BOSCore

* change description

* adjust the kafka plugin dependency be more special

* use boscore repository to improve security

* change version tag

* finish for docker/builder

* pass to build docker and update readme

* add actionseed, global action sequence (#5)

* delete renamed old file

* BOSCore v1.0.1-1.4.3

* restructure the version schema

* fix __gmpn_set_str error when build bos.contract

* prepare for the v1.0.1

* finish BOS basic functions

* add README files

* update info

* Release/1.0.x (#11)

* boscore basic improvement (#2)

* kafka_plugin code

* Automatic installation librdkafka/cppkafka

* Feature/ci

* Feature/48 kafka plugin

* add CMakeModules/FindCppkafka.cmake

* Production of block in time zone sequence

* P2p self discovery

* P2p self discovery

* add notify_plugin

* add api "get_block_detail"

* add free res limit and blklst code

* update free res limit and blklst code

* update res code

* update unittest code

* revert submodule version

* code typo

* update  blklist code

* update sync name list db object error code

* update  code

* update  index code

* Feature/5 ramdom

* Revert "Merge branch 'feature/5-ramdom' into 'develop'"

This reverts merge request !8

* adjust for setup BOSCore

* change description

* adjust the kafka plugin dependency be more special

* use boscore repository to improve security

* change version tag

* finish for docker/builder

* pass to build docker and update readme

* add actionseed, global action sequence (#5)

* delete renamed old file

* BOSCore v1.0.1-1.4.3

* restructure the version schema

* fix __gmpn_set_str error when build bos.contract

* prepare for the v1.0.1

* add README files

* update info

* readme for kafka & add time for action (#5)

* 重启 节点,黑名单 失效,fixes #7 (#8)

* restart sync list db

* recovery system account bos to eosio

* recovery system account bos to eosio

* recovery system account bos to eosio

* Fix/#3 notify plugin (#10)

* Add debug info

* comment log

* rm log for notify_plugin

* prepare for v1.0.2

* patch the EOSIO 1.5.1 security bug fixes

* prepare for v1.0.3

* adjust the slogon

* Remove redundant signing_keys check

* state history plugin: permission_object bug EOSIO#6495

* Add deadline to key recovery

* Modify producer_plugin to have its own thead_pool instead of using chain-threads

* Move thread_pool join/stop to plugin shutdown so that they are joined before application quit

* Fix signature future deadline from starting too early

* Fix overflow of deadline and deadline check

* initial setup of billing CPU for signatures recovered earlier

* Return 400 on get_block with uonexist block number.
For issue 6374

* has_contract() : Determine whether to deploy the contract (#18)

* fix issue 5488

* Fix comments and function names (#19)

* Add action_trace.block_num index. Remove action_trace.trx_id index.

* Fix return codes of build scripts so that buildkite can fail properly

* Make recovery cache non-thread local and guard by mutex

* Calculate cpu usage of signature recovery

* Add signature-cpu-billable-pct option to chain_plugin

* Add missing include of mutex

* Assert signature-cpu-billable-pct is 0-100

* Fix capture of cpu_usage. move flat_set<public_key_type> into attribute

* clear recovered_pub_keys to preserve previous behaviour

* use `assign` instead of `resize`+`memcpy` to update `shared_blob` data

Co-Authored-By: Kayan <taokayan13@gmail.com>

* Add move into tuple creation

* bump version to 1.6.0-rc1

* add explicitly defaulted move semantics

* Store unpacked_trx as signed_transaction

* get_uncached_id no longer needed for thread safety

* get_raw_transaction no longer needed for thread safety

* Remove cached signed_transaction since now cached in packed_transaction

* Test should honor existing compression

* Cleanup of packed_transaction interface. Fixes for comments on PR EOSIO#6471

* Update to fc with unpack verify

* fc renamed reflector_verify to reflector_init

* bump version to 1.5.2

* Update to latest fc with updated verify_init

* Consolidated Security Fixes for 1.5.3

- Add missing implementation of dtor, copy ctor, etc for blob_types of fc::variant

Co-Authored-By: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com>

* bump version to 1.5.3

* bump version to 1.6.0-rc2

* Consolidated Security Fixes for 1.6.0-rc2

- Add missing implementation of dtor, copy ctor, etc for blob_types of fc::variant

Co-Authored-By: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com>

* update developer portal link

update the getting started link to the latest version

* fix tag version typo of cppkafka (EOSIO#24)

* get_contract_code (EOSIO#26)

* fixed #20Using greylist-account while starting nodeos for the first time throws exception (EOSIO#23)

* restart sync list db

* recovery system account bos to eosio

* catch exception plugin initialize sync list before initialize database

* fixed  'cleos system bidname info'  cmd exec  return       could not parse uint64_t (EOSIO#30)

* recovery system account bos to eosio

* catch exception plugin initialize sync list before initialize database

* fixed bidnameinfo could not parse uint64_t

* prepare for 2.0.1

* adjust the location paramater

* apply 1.5.3 patch

* modify the location type

* fix cmake error

* Use https url for wabt submodule

A user agent that doesn't respect hsts could potentially be coerced into downloading malicious sources for wabt via a mitm attack. Prevent this by using a https upstream like the other submodules already do

* Add libtinfo5 dependency to deb package. Resolves EOSIO#6590

Also clean up unused variables and force control directory permissions
to comply with Debian specifications regardless of umask.

* fix aragument name error

* Bump version to 1.6.0

* Consolidated Security Fixes for 1.6.0

- Force compilation support for c++ exceptions for the wabt submodule
- Allow limiting the time a node will spend processing scheduled transactions

Co-Authored-By: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com>
Co-Authored-By: Bart Wyatt <bart.wyatt@block.one>

* Consolidated Security Fixes for 1.6.1

- net_plugin security fixes
- Additional checktime calls to limit cpu usage
- Limit memory usage in producer_plugin

Co-Authored-By: Kevin Heifner <heifnerk@objectcomputing.com>
Co-Authored-By: Matt Witherspoon <32485495+spoonincode@users.noreply.github.com>
Co-authored-by: Kayan <taokayan13@gmail.com>

* Bump version to 1.6.1

* Fix boost 1.67 brew install

The latest homebrew code balks at something in the old 1.67 package file. Fix the package file and store it locally in our repo for now.

We try and pin the boost version because boost upgrades invalidate nodeos data files.

* Set proper directory for baked in macOS LLVM_DIR

Some users (including myself) were seeing llvm@4 unpacked to 4.0.1_1 instead of 4.0.1. Stuff unpacked to the Cellar directory appears to be a kind of implementation detail — /usr/local/opt is the proper place to reference here.

* Add bk step to gather brew files for automatic update

* Update version to 1.6.2

* add noninteractive option for build scripts

* Limit assert message to 1024 chars

* Don't unlink what we install via brew

unlinking eveything we install makes no sense -- it means things like cmake aren't in the path any longer like the script expects. So don't do that any more. Unfortuately this old script requires that gettext be force linked. So implement that behavior explictly for now

* Make sure python-devel is installed for amazon linux builds

* fc version 1.6.x

* merge missed code

* merge missed code

* merge missed code

* prepare v2.0.2
justefg referenced this issue in mixbytes/haya Apr 29, 2019
* [bloc-157] add sync version of grandpa

* [bloc-157] integrate grandpa
taokayan pushed a commit to taokayan/eos that referenced this issue May 15, 2019
NorseGaud pushed a commit that referenced this issue Jul 30, 2019
# This is the 1st commit message:

various improvements

# This is the commit message #2:

new hash

# This is the commit message #3:

fix for script path

# This is the commit message #4:

fixes

# This is the commit message #5:

fixes

# This is the commit message #6:

fixes

# This is the commit message #7:

fixes

# This is the commit message #8:

fixes

# This is the commit message #9:

fixes

# This is the commit message #10:

fixes

# This is the commit message #11:

fixes

# This is the commit message #12:

fixes

# This is the commit message #13:

fixes

# This is the commit message #14:

fixes

# This is the commit message #15:

fixes

# This is the commit message #16:

fixes

# This is the commit message #17:

fixes

# This is the commit message #18:

fixes

# This is the commit message #19:

fixes

# This is the commit message #20:

fixes

# This is the commit message #21:

fixes

# This is the commit message #22:

fixes

# This is the commit message #23:

fixes

# This is the commit message #24:

fixes

# This is the commit message #25:

fixes

# This is the commit message #26:

testing

# This is the commit message #27:

testing

# This is the commit message #28:

testing

# This is the commit message #29:

testing

# This is the commit message #30:

testing

# This is the commit message #31:

testing

# This is the commit message #32:

testing

# This is the commit message #33:

testing

# This is the commit message #34:

testing

# This is the commit message #35:

testing

# This is the commit message #36:

testing

# This is the commit message #37:

testing

# This is the commit message #38:

testing

# This is the commit message #39:

testing

# This is the commit message #40:

testing

# This is the commit message #41:

testing

# This is the commit message #42:

testing

# This is the commit message #43:

testing

# This is the commit message #44:

fixes

# This is the commit message #45:

fixes

# This is the commit message #46:

fixes

# This is the commit message #47:

fixes

# This is the commit message #48:

fixes

# This is the commit message #49:

fixes

# This is the commit message #50:

fixes

# This is the commit message #51:

fixes

# This is the commit message #52:

fixes

# This is the commit message #53:

fixes

# This is the commit message #54:

fixes

# This is the commit message #55:

fixes

# This is the commit message #56:

fixes

# This is the commit message #57:

fixes

# This is the commit message #58:

fixes

# This is the commit message #59:

fixes

# This is the commit message #60:

fixes

# This is the commit message #61:

fixes

# This is the commit message #62:

fixes

# This is the commit message #63:

fixes

# This is the commit message #64:

fixes

# This is the commit message #65:

fixes

# This is the commit message #66:

fixes

# This is the commit message #67:

fixes

# This is the commit message #68:

fixes

# This is the commit message #69:

fixes

# This is the commit message #70:

fixes

# This is the commit message #71:

fixes

# This is the commit message #72:

fixes

# This is the commit message #73:

fixes

# This is the commit message #74:

fixes

# This is the commit message #75:

fixes

# This is the commit message #76:

fixes

# This is the commit message #77:

fixes

# This is the commit message #78:

fixes

# This is the commit message #79:

more testing

# This is the commit message #80:

testing

# This is the commit message #81:

fixes

# This is the commit message #82:

fixes

# This is the commit message #83:

fixes

# This is the commit message #84:

fixes

# This is the commit message #85:

fixes

# This is the commit message #86:

fixes

# This is the commit message #87:

fixes

# This is the commit message #88:

fixes

# This is the commit message #89:

fixes

# This is the commit message #90:

fixes

# This is the commit message #91:

fixes

# This is the commit message #92:

fixes

# This is the commit message #93:

propagate-environment for buildkite-agent

# This is the commit message #94:

propagate-environment for buildkite-agent

# This is the commit message #95:

propagate-environment for buildkite-agent

# This is the commit message #96:

propagate-environment for buildkite-agent

# This is the commit message #97:

fixes

# This is the commit message #98:

fixes

# This is the commit message #99:

fixes

# This is the commit message #100:

fixes

# This is the commit message #101:

fixes

# This is the commit message #102:

fixes

# This is the commit message #103:

fixes

# This is the commit message #104:

fixes

# This is the commit message #105:

fixes

# This is the commit message #106:

fixes

# This is the commit message #107:

fixes

# This is the commit message #108:

fixes

# This is the commit message #109:

fixes

# This is the commit message #110:

fixes

# This is the commit message #111:

fixes

# This is the commit message #112:

fixes

# This is the commit message #113:

fixes

# This is the commit message #114:

fixes

# This is the commit message #115:

fixes

# This is the commit message #116:

fixes

# This is the commit message #117:

fixes

# This is the commit message #118:

fixes

# This is the commit message #119:

fixes

# This is the commit message #120:

fixes

# This is the commit message #121:

fixes

# This is the commit message #122:

fixes

# This is the commit message #123:

fixes

# This is the commit message #124:

fixes

# This is the commit message #125:

fixes

# This is the commit message #126:

fixes

# This is the commit message #127:

fixes

# This is the commit message #128:

fixes

# This is the commit message #129:

fixes

# This is the commit message #130:

fixes

# This is the commit message #131:

fixes

# This is the commit message #132:

fixes

# This is the commit message #133:

fixes

# This is the commit message #134:

fixes

# This is the commit message #135:

fixes

# This is the commit message #136:

fixes

# This is the commit message #137:

fixes

# This is the commit message #138:

fixes

# This is the commit message #139:

fixes

# This is the commit message #140:

fixes

# This is the commit message #141:

fixes

# This is the commit message #142:

fixes

# This is the commit message #143:

fixes

# This is the commit message #144:

fixes

# This is the commit message #145:

fixes

# This is the commit message #146:

fixes

# This is the commit message #147:

fixes

# This is the commit message #148:

fixes

# This is the commit message #149:

fixes

# This is the commit message #150:

fixes

# This is the commit message #151:

fixes

# This is the commit message #152:

fixes

# This is the commit message #153:

testing

# This is the commit message #154:

fixes

# This is the commit message #155:

fixes

# This is the commit message #156:

fixes

# This is the commit message #157:

fixes

# This is the commit message #158:

fixes

# This is the commit message #159:

fixes

# This is the commit message #160:

fixes

# This is the commit message #161:

fixes

# This is the commit message #162:

fixes

# This is the commit message #163:

fixes

# This is the commit message #164:

fixes

# This is the commit message #165:

fixes

# This is the commit message #166:

fixes

# This is the commit message #167:

fixes

# This is the commit message #168:

fixes

# This is the commit message #169:

fixes

# This is the commit message #170:

fixes

# This is the commit message #171:

fixes

# This is the commit message #172:

fixes

# This is the commit message #173:

fixes

# This is the commit message #174:

fixes

# This is the commit message #175:

fixes

# This is the commit message #176:

fixes

# This is the commit message #177:

fixes

# This is the commit message #178:

fixes

# This is the commit message #179:

fixes

# This is the commit message #180:

fixes

# This is the commit message #181:

fixes

# This is the commit message #182:

fixes

# This is the commit message #183:

fixes

# This is the commit message #184:

fixes

# This is the commit message #185:

fixes

# This is the commit message #186:

fixes
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants