title: how to compile and run a new c++ actor framework project?
body: <p>I use Ubunutu. I have installed CAF from github. I've follow step by step this instructions: <a href="https://actor-framework.readthedocs.io/en/stable/FirstSteps.html" rel="nofollow noreferrer">https://actor-framework.readthedocs.io/en/stable/FirstSteps.html</a> </p>
  
  <p>I want to  compile and run the hello world file. No specific indication for the compilation are given. 
  I made just g++ hello_world.cpp -std=c++11</p>
  
  <p>But i have a very long error message. (i have cut the middle of the message, otherwise it's to long)</p>
  
  <p>Note, I don't think <a href="https://stackoverflow.com/questions/12573816/what-is-an-undefined-reference-unresolved-external-symbol-error-and-how-do-i-fix">What is an undefined reference/unresolved external symbol error and how do I fix it?</a> is useful in my case. I haven't change the hello-word. I think it may be somethings that is not install in my computer or somethings like that.</p>
  
  <p>Can anybody tell me how to fix y problem?</p>
  
  <pre><code>g++ hello_world.cpp -std=c++11
  /tmp/ccbpYkaB.o : Dans la fonction « mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}::operator()(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;) const » :
  hello_world.cpp:(.text+0x16a) : référence indéfinie vers « caf::aout(caf::local_actor*) »
  hello_world.cpp:(.text+0x182) : référence indéfinie vers « std::endl(caf::actor_ostream&amp;) »
  /tmp/ccbpYkaB.o : Dans la fonction « hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}::operator()(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;) const » :
  hello_world.cpp:(.text+0x305) : référence indéfinie vers « caf::aout(caf::local_actor*) »
  hello_world.cpp:(.text+0x31d) : référence indéfinie vers « std::endl(caf::actor_ostream&amp;) »
  /tmp/ccbpYkaB.o : Dans la fonction « main » :
  hello_world.cpp:(.text+0x443) : référence indéfinie vers « caf::actor_system_config::actor_system_config() »
  hello_world.cpp:(.text+0x45c) : référence indéfinie vers « caf::actor_system::actor_system(caf::actor_system_config&amp;) »
  hello_world.cpp:(.text+0x4cc) : référence indéfinie vers « caf::actor_system::~actor_system() »
  hello_world.cpp:(.text+0x4db) : référence indéfinie vers « caf::actor_system_config::~actor_system_config() »
  hello_world.cpp:(.text+0x517) : référence indéfinie vers « caf::actor_system::~actor_system() »
  hello_world.cpp:(.text+0x52b) : référence indéfinie vers « caf::actor_system_config::~actor_system_config() »
  /tmp/ccbpYkaB.o : Dans la fonction « void caf::response_handle&lt;caf::event_based_actor, caf::message, false&gt;::then_impl&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;(hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&amp;) const » :
  hello_world.cpp:(.text+0x6bb) : référence indéfinie vers « caf::scheduled_actor::add_multiplexed_response_handler(caf::message_id, caf::behavior) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::trivial_match_case&lt;mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;::~trivial_match_case() » :
  hello_world.cpp:(.text+0x974) : référence indéfinie vers « caf::match_case::~match_case() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::default_behavior_impl&lt;std::tuple&lt;caf::trivial_match_case&lt;mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt; &gt; &gt;::default_behavior_impl&lt;{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;({lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&amp;&amp;) » :
  hello_world.cpp:(.text+0xadd) : référence indéfinie vers « caf::detail::behavior_impl::behavior_impl(caf::duration) »
  hello_world.cpp:(.text+0xb3d) : référence indéfinie vers « caf::detail::behavior_impl::~behavior_impl() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::trivial_match_case&lt;mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;::trivial_match_case({lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}) » :
  hello_world.cpp:(.text+0xc69) : référence indéfinie vers « caf::match_case::match_case(unsigned int) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::trivial_match_case&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;::~trivial_match_case() » :
  hello_world.cpp:(.text+0xed8) : référence indéfinie vers « caf::match_case::~match_case() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::default_behavior_impl&lt;std::tuple&lt;caf::trivial_match_case&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt; &gt; &gt;::default_behavior_impl&lt;{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;({lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&amp;&amp;) » :
  hello_world.cpp:(.text+0x1041) : référence indéfinie vers « caf::detail::behavior_impl::behavior_impl(caf::duration) »
  hello_world.cpp:(.text+0x10a1) : référence indéfinie vers « caf::detail::behavior_impl::~behavior_impl() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::trivial_match_case&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;::trivial_match_case({lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}) » :
  hello_world.cpp:(.text+0x11bd) : référence indéfinie vers « caf::match_case::match_case(unsigned int) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::default_behavior_impl&lt;std::tuple&lt;caf::trivial_match_case&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt; &gt; &gt;::~default_behavior_impl() » :
  hello_world.cpp:(.text+0x1446) : référence indéfinie vers « caf::detail::behavior_impl::~behavior_impl() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::default_behavior_impl&lt;std::tuple&lt;caf::trivial_match_case&lt;mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt; &gt; &gt;::~default_behavior_impl() » :
  hello_world.cpp:(.text+0x14b8) : référence indéfinie vers « caf::detail::behavior_impl::~behavior_impl() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::trivial_match_case&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;::invoke(caf::detail::invoke_result_visitor&amp;, caf::type_erased_tuple&amp;) » :
  hello_world.cpp:(.text+0x1659) : référence indéfinie vers « caf::detail::try_match(caf::type_erased_tuple const&amp;, caf::detail::meta_element const*, unsigned long) »
  hello_world.cpp:(.text+0x16b2) : référence indéfinie vers « caf::message::copy(caf::type_erased_tuple const&amp;) »
  hello_world.cpp:(.text+0x16c5) : référence indéfinie vers « caf::message::operator=(caf::message&amp;&amp;) »
  hello_world.cpp:(.text+0x16d1) : référence indéfinie vers « caf::message::~message() »
  hello_world.cpp:(.text+0x1757) : référence indéfinie vers « caf::message::~message() »
  hello_world.cpp:(.text+0x1779) : référence indéfinie vers « caf::message::~message() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::trivial_match_case&lt;mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;::invoke(caf::detail::invoke_result_visitor&amp;, caf::type_erased_tuple&amp;) » :
  hello_world.cpp:(.text+0x18b7) : référence indéfinie vers « caf::detail::try_match(caf::type_erased_tuple const&amp;, caf::detail::meta_element const*, unsigned long) »
  hello_world.cpp:(.text+0x1916) : référence indéfinie vers « caf::message::copy(caf::type_erased_tuple const&amp;) »
  hello_world.cpp:(.text+0x192c) : référence indéfinie vers « caf::message::operator=(caf::message&amp;&amp;) »
  hello_world.cpp:(.text+0x1938) : référence indéfinie vers « caf::message::~message() »
  hello_world.cpp:(.text+0x19cd) : référence indéfinie vers « caf::message::~message() »
  hello_world.cpp:(.text+0x1a03) : référence indéfinie vers « caf::message::~message() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::default_behavior_impl&lt;std::tuple&lt;caf::trivial_match_case&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;, caf::timeout_definition&lt;std::function&lt;void ()&gt; &gt; &gt; &gt;::default_behavior_impl&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1} const&amp;, std::function&lt;void ()&gt; const&amp;&gt;(hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1} const&amp;, std::function&lt;void ()&gt; const&amp;) » :
  hello_world.cpp:(.text+0x21eb) : référence indéfinie vers « caf::detail::behavior_impl::behavior_impl(caf::duration) »
  hello_world.cpp:(.text+0x225d) : référence indéfinie vers « caf::detail::behavior_impl::~behavior_impl() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::default_behavior_impl&lt;std::tuple&lt;caf::trivial_match_case&lt;mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;, caf::timeout_definition&lt;std::function&lt;void ()&gt; &gt; &gt; &gt;::default_behavior_impl&lt;mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1} const&amp;, std::function&lt;void ()&gt; const&amp;&gt;(mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1} const&amp;, std::function&lt;void ()&gt; const&amp;) » :
  hello_world.cpp:(.text+0x2445) : référence indéfinie vers « caf::detail::behavior_impl::behavior_impl(caf::duration) »
  hello_world.cpp:(.text+0x24b7) : référence indéfinie vers « caf::detail::behavior_impl::~behavior_impl() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::default_behavior_impl&lt;std::tuple&lt;caf::trivial_match_case&lt;mirror(caf::event_based_actor*)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;, caf::timeout_definition&lt;std::function&lt;void ()&gt; &gt; &gt; &gt;::~default_behavior_impl() » :
  hello_world.cpp:(.text+0x2a1a) : référence indéfinie vers « caf::detail::behavior_impl::~behavior_impl() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::default_behavior_impl&lt;std::tuple&lt;caf::trivial_match_case&lt;hello_world(caf::event_based_actor*, caf::actor const&amp;)::{lambda(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;)#1}&gt;, caf::timeout_definition&lt;std::function&lt;void ()&gt; &gt; &gt; &gt;::~default_behavior_impl() » :
  hello_world.cpp:(.text+0x2a8c) : référence indéfinie vers « caf::detail::behavior_impl::~behavior_impl() »
  /tmp/ccbpYkaB.o:(.rodata+0x190) : référence indéfinie vers « caf::memory_managed::request_deletion(bool) »
  /tmp/ccbpYkaB.o:(.rodata+0x1a8) : référence indéfinie vers « caf::detail::behavior_impl::invoke_empty(caf::detail::invoke_result_visitor&amp;) »
  /tmp/ccbpYkaB.o:(.rodata+0x1b0) : référence indéfinie vers « caf::detail::behavior_impl::invoke(caf::detail::invoke_result_visitor&amp;, caf::type_erased_tuple&amp;) »
  /tmp/ccbpYkaB.o:(.rodata+0x200) : référence indéfinie vers « caf::memory_managed::request_deletion(bool) »
  /tmp/ccbpYkaB.o:(.rodata+0x218) : référence indéfinie vers « caf::detail::behavior_impl::invoke_empty(caf::detail::invoke_result_visitor&amp;) »
  /tmp/ccbpYkaB.o:(.rodata+0x220) : référence indéfinie vers « caf::detail::behavior_impl::invoke(caf::detail::invoke_result_visitor&amp;, caf::type_erased_tuple&amp;) »
  /tmp/ccbpYkaB.o:(.rodata+0x330) : référence indéfinie vers « typeinfo for caf::detail::behavior_impl »
  /tmp/ccbpYkaB.o:(.rodata+0x3e0) : référence indéfinie vers « typeinfo for caf::match_case »
  /tmp/ccbpYkaB.o:(.rodata+0x4c0) : référence indéfinie vers « typeinfo for caf::detail::behavior_impl »
  /tmp/ccbpYkaB.o:(.rodata+0x570) : référence indéfinie vers « typeinfo for caf::match_case »
  /tmp/ccbpYkaB.o:(.rodata+0x598) : référence indéfinie vers « caf::memory_managed::request_deletion(bool) »
  /tmp/ccbpYkaB.o:(.rodata+0x5b0) : référence indéfinie vers « caf::detail::behavior_impl::invoke_empty(caf::detail::invoke_result_visitor&amp;) »
  /tmp/ccbpYkaB.o:(.rodata+0x5b8) : référence indéfinie vers « caf::detail::behavior_impl::invoke(caf::detail::invoke_result_visitor&amp;, caf::type_erased_tuple&amp;) »
  /tmp/ccbpYkaB.o:(.rodata+0x5e0) : référence indéfinie vers « caf::memory_managed::request_deletion(bool) »
  /tmp/ccbpYkaB.o:(.rodata+0x5f8) : référence indéfinie vers « caf::detail::behavior_impl::invoke_empty(caf::detail::invoke_result_visitor&amp;) »
  /tmp/ccbpYkaB.o:(.rodata+0x600) : référence indéfinie vers « caf::detail::behavior_impl::invoke(caf::detail::invoke_result_visitor&amp;, caf::type_erased_tuple&amp;) »
  /tmp/ccbpYkaB.o:(.rodata+0x708) : référence indéfinie vers « typeinfo for caf::detail::behavior_impl »
  /tmp/ccbpYkaB.o:(.rodata+0x818) : référence indéfinie vers « typeinfo for caf::detail::behavior_impl »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::intrusive_ptr_release(caf::ref_counted*) » :
  hello_world.cpp:(.text._ZN3caf21intrusive_ptr_releaseEPNS_11ref_countedE[_ZN3caf21intrusive_ptr_releaseEPNS_11ref_countedE]+0x14) : référence indéfinie vers « caf::ref_counted::deref() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::message_data::cow_ptr::operator*() » :
  hello_world.cpp:(.text._ZN3caf6detail12message_data7cow_ptrdeEv[_ZN3caf6detail12message_data7cow_ptrdeEv]+0x14) : référence indéfinie vers « caf::detail::message_data::cow_ptr::get_unshared() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::stringification_inspector::consume(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;&amp;) » :
  hello_world.cpp:(.text._ZN3caf6detail25stringification_inspector7consumeERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE[_ZN3caf6detail25stringification_inspector7consumeERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE]+0x2a) : référence indéfinie vers « caf::detail::stringification_inspector::consume(char const*) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::invoke_result_visitor::operator()(caf::unit_t const&amp;) » :
  hello_world.cpp:(.text._ZN3caf6detail21invoke_result_visitorclERKNS_6unit_tE[_ZN3caf6detail21invoke_result_visitorclERKNS_6unit_tE]+0x4e) : référence indéfinie vers « caf::message::~message() »
  hello_world.cpp:(.text._ZN3caf6detail21invoke_result_visitorclERKNS_6unit_tE[_ZN3caf6detail21invoke_result_visitorclERKNS_6unit_tE]+0x6f) : référence indéfinie vers « caf::message::~message() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::actor_ostream::operator&lt;&lt;(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;) » :
  hello_world.cpp:(.text._ZN3caf13actor_ostreamlsENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE[_ZN3caf13actor_ostreamlsENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE]+0x4d) : référence indéfinie vers « caf::actor_ostream::write(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::intrusive_ptr&lt;caf::actor_control_block&gt;::~intrusive_ptr() » :
  hello_world.cpp:(.text._ZN3caf13intrusive_ptrINS_19actor_control_blockEED2Ev[_ZN3caf13intrusive_ptrINS_19actor_control_blockEED5Ev]+0x23) : référence indéfinie vers « caf::intrusive_ptr_release(caf::actor_control_block*) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::infer_handle_from_fun&lt;caf::behavior (*)(caf::event_based_actor*), caf::detail::get_callable_trait&lt;caf::behavior (*)(caf::event_based_actor*)&gt;::type&gt;::type caf::actor_system::spawn&lt;(caf::spawn_options)0, caf::behavior (*)(caf::event_based_actor*)&gt;(caf::behavior (*)(caf::event_based_actor*)) » :
  hello_world.cpp:(.text._ZN3caf12actor_system5spawnILNS_13spawn_optionsE0EPFNS_8behaviorEPNS_17event_based_actorEEJEEENS_21infer_handle_from_funIT0_NS_6detail18get_callable_traitIS9_E4typeEE4typeES9_DpOT1_[_ZN3caf12actor_system5spawnILNS_13spawn_optionsE0EPFNS_8behaviorEPNS_17event_based_actorEEJEEENS_21infer_handle_from_funIT0_NS_6detail18get_callable_traitIS9_E4typeEE4typeES9_DpOT1_]+0x3d) : référence indéfinie vers « caf::actor_config::actor_config(caf::execution_unit*) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::infer_handle_from_fun&lt;void (*)(caf::event_based_actor*, caf::actor const&amp;), caf::detail::get_callable_trait&lt;void (*)(caf::event_based_actor*, caf::actor const&amp;)&gt;::type&gt;::type caf::actor_system::spawn&lt;(caf::spawn_options)0, void (*)(caf::event_based_actor*, caf::actor const&amp;), caf::actor&amp;&gt;(void (*)(caf::event_based_actor*, caf::actor const&amp;), caf::actor&amp;) » :
  hello_world.cpp:(.text._ZN3caf12actor_system5spawnILNS_13spawn_optionsE0EPFvPNS_17event_based_actorERKNS_5actorEEJRS5_EEENS_21infer_handle_from_funIT0_NS_6detail18get_callable_traitISC_E4typeEE4typeESC_DpOT1_[_ZN3caf12actor_system5spawnILNS_13spawn_optionsE0EPFvPNS_17event_based_actorERKNS_5actorEEJRS5_EEENS_21infer_handle_from_funIT0_NS_6detail18get_callable_traitISC_E4typeEE4typeESC_DpOT1_]+0x41) : référence indéfinie vers « caf::actor_config::actor_config(caf::execution_unit*) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::response_handle&lt;caf::event_based_actor, caf::response_type&lt;caf::actor::signatures, caf::detail::implicit_conversions&lt;std::decay&lt;char const (&amp;) [13]&gt;::type&gt;::type&gt;::type, false&gt; caf::mixin::requester&lt;caf::mixin::sender&lt;caf::scheduled_actor, caf::event_based_actor&gt;, caf::event_based_actor&gt;::request&lt;(caf::message_priority)0, caf::actor, char const (&amp;) [13]&gt;(caf::actor const&amp;, caf::duration const&amp;, char const (&amp;) [13]) » :
  hello_world.cpp:(.text._ZN3caf5mixin9requesterINS0_6senderINS_15scheduled_actorENS_17event_based_actorEEES4_E7requestILNS_16message_priorityE0ENS_5actorEJRA13_KcEEENS_15response_handleIS4_NS_13response_typeINT0_10signaturesEJDpNS_6detail20implicit_conversionsINSt5decayIT1_E4typeEE4typeEEE4typeELb0EEERKSF_RKNS_8durationEDpOSK_[_ZN3caf5mixin9requesterINS0_6senderINS_15scheduled_actorENS_17event_based_actorEEES4_E7requestILNS_16message_priorityE0ENS_5actorEJRA13_KcEEENS_15response_handleIS4_NS_13response_typeINT0_10signaturesEJDpNS_6detail20implicit_conversionsINSt5decayIT1_E4typeEE4typeEEE4typeELb0EEERKSF_RKNS_8durationEDpOSK_]+0x3f) : référence indéfinie vers « caf::local_actor::new_request_id(caf::message_priority) »
  hello_world.cpp:(.text._ZN3caf5mixin9requesterINS0_6senderINS_15scheduled_actorENS_17event_based_actorEEES4_E7requestILNS_16message_priorityE0ENS_5actorEJRA13_KcEEENS_15response_handleIS4_NS_13response_typeINT0_10signaturesEJDpNS_6detail20implicit_conversionsINSt5decayIT1_E4typeEE4typeEEE4typeELb0EEERKSF_RKNS_8durationEDpOSK_[_ZN3caf5mixin9requesterINS0_6senderINS_15scheduled_actorENS_17event_based_actorEEES4_E7requestILNS_16message_priorityE0ENS_5actorEJRA13_KcEEENS_15response_handleIS4_NS_13response_typeINT0_10signaturesEJDpNS_6detail20implicit_conversionsINSt5decayIT1_E4typeEE4typeEEE4typeELb0EEERKSF_RKNS_8durationEDpOSK_]+0x81) : référence indéfinie vers « caf::abstract_actor::ctrl() const »
  inie vers « caf::mailbox_element::~mailbox_element() »
  /tmp/ccbpYkaB.o : Dans la fonction « std::_Head_base&lt;0ul, caf::error, false&gt;::~_Head_base() » :
  hello_world.cpp:(.text._ZNSt10_Head_baseILm0EN3caf5errorELb0EED2Ev[_ZNSt10_Head_baseILm0EN3caf5errorELb0EED5Ev]+0x14) : référence indéfinie vers « caf::error::~error() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::tuple_vals_impl&lt;caf::type_erased_tuple, caf::error&gt;::~tuple_vals_impl() » :
  hello_world.cpp:(.text._ZN3caf6detail15tuple_vals_implINS_17type_erased_tupleEJNS_5errorEEED2Ev[_ZN3caf6detail15tuple_vals_implINS_17type_erased_tupleEJNS_5errorEEED5Ev]+0x30) : référence indéfinie vers « caf::type_erased_tuple::~type_erased_tuple() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::mailbox_element_vals&lt;caf::error&gt;::mailbox_element_vals&lt;caf::error&gt;(caf::intrusive_ptr&lt;caf::actor_control_block&gt;&amp;&amp;, caf::message_id, std::vector&lt;caf::intrusive_ptr&lt;caf::actor_control_block&gt;, std::allocator&lt;caf::intrusive_ptr&lt;caf::actor_control_block&gt; &gt; &gt;&amp;&amp;, caf::error&amp;&amp;) » :
  hello_world.cpp:(.text._ZN3caf20mailbox_element_valsIJNS_5errorEEEC2IJS1_EEEONS_13intrusive_ptrINS_19actor_control_blockEEENS_10message_idEOSt6vectorIS6_SaIS6_EEDpOT_[_ZN3caf20mailbox_element_valsIJNS_5errorEEEC5IJS1_EEEONS_13intrusive_ptrINS_19actor_control_blockEEENS_10message_idEOSt6vectorIS6_SaIS6_EEDpOT_]+0x4a) : référence indéfinie vers « caf::mailbox_element::mailbox_element(caf::intrusive_ptr&lt;caf::actor_control_block&gt;&amp;&amp;, caf::message_id, std::vector&lt;caf::intrusive_ptr&lt;caf::actor_control_block&gt;, std::allocator&lt;caf::intrusive_ptr&lt;caf::actor_control_block&gt; &gt; &gt;&amp;&amp;) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::actor caf::make_actor&lt;caf::event_based_actor, caf::actor, caf::actor_config&amp;&gt;(unsigned long, caf::node_id, caf::actor_system*, caf::actor_config&amp;) » :
  hello_world.cpp:(.text._ZN3caf10make_actorINS_17event_based_actorENS_5actorEJRNS_12actor_configEEEET0_mNS_7node_idEPNS_12actor_systemEDpOT1_[_ZN3caf10make_actorINS_17event_based_actorENS_5actorEJRNS_12actor_configEEEET0_mNS_7node_idEPNS_12actor_systemEDpOT1_]+0x96) : référence indéfinie vers « caf::node_id::~node_id() »
  hello_world.cpp:(.text._ZN3caf10make_actorINS_17event_based_actorENS_5actorEJRNS_12actor_configEEEET0_mNS_7node_idEPNS_12actor_systemEDpOT1_[_ZN3caf10make_actorINS_17event_based_actorENS_5actorEJRNS_12actor_configEEEET0_mNS_7node_idEPNS_12actor_systemEDpOT1_]+0xae) : référence indéfinie vers « caf::actor::actor(caf::actor_control_block*, bool) »
  hello_world.cpp:(.text._ZN3caf10make_actorINS_17event_based_actorENS_5actorEJRNS_12actor_configEEEET0_mNS_7node_idEPNS_12actor_systemEDpOT1_[_ZN3caf10make_actorINS_17event_based_actorENS_5actorEJRNS_12actor_configEEEET0_mNS_7node_idEPNS_12actor_systemEDpOT1_]+0xe2) : référence indéfinie vers « caf::node_id::~node_id() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::detail::tuple_vals_impl&lt;caf::type_erased_tuple, std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;::tuple_vals_impl&lt;char const (&amp;) [13]&gt;(char const (&amp;) [13]) » :
  hello_world.cpp:(.text._ZN3caf6detail15tuple_vals_implINS_17type_erased_tupleEJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEC2IJRA13_KcEEEDpOT_[_ZN3caf6detail15tuple_vals_implINS_17type_erased_tupleEJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEC5IJRA13_KcEEEDpOT_]+0x6d) : référence indéfinie vers « caf::type_erased_tuple::~type_erased_tuple() »
  /tmp/ccbpYkaB.o : Dans la fonction « std::_Head_base&lt;0ul, caf::error, false&gt;::_Head_base&lt;caf::error&gt;(caf::error&amp;&amp;) » :
  hello_world.cpp:(.text._ZNSt10_Head_baseILm0EN3caf5errorELb0EEC2IS1_EEOT_[_ZNSt10_Head_baseILm0EN3caf5errorELb0EEC5IS1_EEOT_]+0x2a) : référence indéfinie vers « caf::error::error(caf::error&amp;&amp;) »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::actor_control_block::~actor_control_block() » :
  hello_world.cpp:(.text._ZN3caf19actor_control_blockD2Ev[_ZN3caf19actor_control_blockD5Ev]+0x18) : référence indéfinie vers « caf::node_id::~node_id() »
  /tmp/ccbpYkaB.o : Dans la fonction « caf::actor_storage&lt;caf::event_based_actor&gt;::actor_storage&lt;caf::actor_config&amp;&gt;(unsigned long, caf::node_id, caf::actor_system*, caf::actor_config&amp;) » :
  hello_world.cpp:(.text._ZN3caf13actor_storageINS_17event_based_actorEEC2IJRNS_12actor_configEEEEmNS_7node_idEPNS_12actor_systemEDpOT_[_ZN3caf13actor_storageINS_17event_based_actorEEC5IJRNS_12actor_configEEEEmNS_7node_idEPNS_12actor_systemEDpOT_]+0x73) : référence indéfinie vers « caf::event_based_actor::event_based_actor(caf::actor_config&amp;) »
  /tJRKS2_EEEDpOT_]+0x58) : référence indéfinie vers « caf::type_erased_value::~type_erased_value() »
  /tmp/ccbpYkaB.o : Dans la fonction « std::enable_if&lt;!caf::meta::is_annotation&lt;std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;&gt;::value, void&gt;::type caf::detail::stringification_inspector::traverse&lt;std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;&gt;(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;) » :
  hello_world.cpp:(.text._ZN3caf6detail25stringification_inspector8traverseIRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEJEEENSt9enable_ifIXntsrNS_4meta13is_annotationIT_EE5valueEvE4typeEOSE_DpOT0_[_ZN3caf6detail25stringification_inspector8traverseIRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEJEEENSt9enable_ifIXntsrNS_4meta13is_annotationIT_EE5valueEvE4typeEOSE_DpOT0_]+0x18) : référence indéfinie vers « caf::detail::stringification_inspector::sep() »
  /tmp/ccbpYkaB.o : Dans la fonction « std::enable_if&lt;!caf::meta::is_annotation&lt;caf::error const&amp;&gt;::value, void&gt;::type caf::detail::stringification_inspector::traverse&lt;caf::error const&amp;&gt;(caf::error const&amp;) » :
  hello_world.cpp:(.text._ZN3caf6detail25stringification_inspector8traverseIRKNS_5errorEJEEENSt9enable_ifIXntsrNS_4meta13is_annotationIT_EE5valueEvE4typeEOS9_DpOT0_[_ZN3caf6detail25stringification_inspector8traverseIRKNS_5errorEJEEENSt9enable_ifIXntsrNS_4meta13is_annotationIT_EE5valueEvE4typeEOS9_DpOT0_]+0x18) : référence indéfinie vers « caf::detail::stringification_inspector::sep() »
  collect2: error: ld returned 1 exit status
  </code></pre>