Hi all,<br><br>I am trying to separate structure from content and send a vector of strings. <br>Without the separation it works fine, I do receive the data on workers. <br>When I try to separate structure and data it fails to compile. My simple code and the error message are below.<br>
<br>Any idea, what am I doing wrong?<br><br>Compilation <br>mpicxx test.cpp -o test -I /boost/include/boost-1_37/ /boost/lib/libboost_mpi-gcc41-mt-1_37.a /boost/lib/libboost_serialization-gcc41-mt-1_37.a /boost/lib/libboost_date_time-gcc41-mt-1_37.a <br>
<br>Code<br><br>1 #include &quot;mpi_ver_headers.h&quot;<br>� 2 <br>� 3 using namespace std;<br>� 4 namespace mpi = boost::mpi;<br>� 5 mpi::communicator world;<br>� 6 <br>� 7 <br>� 8 int main(int argc, char* argv[]){<br>� 9���� vector&lt;std::string&gt; a;<br>
�10���� int sz;<br>�11���� mpi::environment env(argc, argv);<br>�12���� if (world.rank() == 0){<br>�13�������� broadcast(world, mpi::skeleton(a), 0);<br>�14�������� mpi::content c = mpi::get_content(a);<br>�15�������� for(int i =1; i &lt; world.size(); i++){<br>
�16������������ for(int l = 1; l &lt; 3; l++)� <br>�17���������������� a.push_back(&quot;A&quot;);<br>�18������������ sz = a.size();<br>�19������������ world.send(i, 3, sz);<br>�20������������ world.send(i, 1, &amp;a[0], sz);<br>
�21������������ world.recv(i, 2);<br>�22�������� }<br>�23���� }<br>�24���� if(world.rank() &gt; 0){<br>�25�������� broadcast(world, mpi::skeleton(a), 0);<br>�26�������� mpi::content c = mpi::get_content(a);��������������������������������������������������������������������������������������������������������������������������������������������������������������� <br>
�27�������� world.recv(0, 3 , sz);<br>�28�������� a.resize(sz); <br>�29�������� world.recv(0, 1, &amp;a[0], sz);<br>�30�������� for(int l=0; l &lt; sz; l++)<br>�31������������ cout &lt;&lt; a[l] &lt;&lt; &quot;\t&quot;;<br>
�32�������� cout &lt;&lt; endl;<br>�33�������� world.send(0, 2);<br>�34���� }�� <br>�35 }�� <br><br>&quot;mpi_ver_headers.h&quot; is <br>........ <br>29 #include &lt;boost/mpi.hpp&gt;<br>�30 #include &lt;boost/config.hpp&gt; <br>
�31 #include &lt;boost/tokenizer.hpp&gt;<br>�32 #include &lt;boost/mpi/datatype.hpp&gt;<br>�33 #include &lt;boost/mpi/allocator.hpp&gt;<br>�34 #include &lt;boost/archive/tmpdir.hpp&gt;<br>�35 #include &lt;boost/archive/tmpdir.hpp&gt;<br>
�36 #include &lt;boost/mpi/environment.hpp&gt;<br>�37 #include &lt;boost/mpi/collectives.hpp&gt;<br>�38 #include &lt;boost/mpi/communicator.hpp&gt;<br>�39 #include &lt;boost/serialization/map.hpp&gt;<br>�40 #include &lt;boost/serialization/export.hpp&gt;<br>
�41 #include &lt;boost/serialization/vector.hpp&gt; <br>�42 #include &lt;boost/serialization/access.hpp&gt;<br>�43 #include &lt;boost/serialization/string.hpp&gt;<br>�44 #include &lt;boost/serialization/utility.hpp&gt;<br>
�45 #include &lt;boost/archive/text_oarchive.hpp&gt;<br>�46 #include &lt;boost/archive/text_iarchive.hpp&gt;<br>�47 #include &lt;boost/serialization/utility.hpp&gt;<br>�48 #include &lt;boost/serialization/hash_map.hpp&gt;<br>
�49 #include &lt;boost/archive/binary_oarchive.hpp&gt;<br>�50 #include &lt;boost/archive/binary_iarchive.hpp&gt;<br>�51 #include &lt;boost/mpi/skeleton_and_content.hpp&gt;<br>�52 #include &lt;boost/serialization/base_object.hpp&gt;<br>
�53 #include &lt;boost/serialization/base_object.hpp&gt;<br>�54 #include &lt;boost/progress.hpp&gt;<br>�55 #include &lt;boost/date_time/iso_format.hpp&gt;<br>�56 #include &quot;boost/date_time/gregorian/gregorian.hpp&quot;<br>
�57 #include &lt;boost/date_time/posix_time/posix_time.hpp&gt;<br>�58 #include &lt;boost/date_time/posix_time/posix_time_types.hpp&gt;<br>�59 #include &lt;boost/date_time/gregorian/greg_serialize.hpp&gt;<br>�60 #include &lt;boost/date_time/posix_time/time_serialize.hpp&gt;<br>
<br><br>Error<br>/boost/include/boost-1_37/boost/mpi/datatype.hpp: In function �ompi_datatype_t* boost::mpi::get_mpi_datatype(const T&amp;) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�:<br>
/boost/include/boost-1_37/boost/mpi/detail/mpi_datatype_primitive.hpp:96:�� instantiated from �void boost::mpi::detail::mpi_datatype_primitive::save(const T&amp;) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:95:�� instantiated from �static void boost::archive::save_access::save_primitive(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:212:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::save_primitive::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive&lt;Archive&gt;::save_override(const T&amp;, int) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive&amp; boost::archive::detail::interface_oarchive&lt;Archive&gt;::operator&lt;&lt;(T&amp;) [with T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/serialization/nvp.hpp:78:�� instantiated from �void boost::serialization::nvp&lt;T&gt;::save(Archivex&amp;, unsigned int) const [with Archivex = boost::mpi::detail::content_oarchive, T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/access.hpp:93:�� instantiated from �static void boost::serialization::access::member_save(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_member.hpp:43:�� instantiated from �static void boost::serialization::detail::member_saver&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_member.hpp:69:�� instantiated from �void boost::serialization::split_member(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/nvp.hpp:88:�� instantiated from �void boost::serialization::nvp&lt;T&gt;::serialize(Archive&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/access.hpp:109:�� instantiated from �static void boost::serialization::access::serialize(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:74:�� instantiated from �void boost::serialization::serialize(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:220:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::save_only::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive&lt;Archive&gt;::save_override(const T&amp;, int) [with T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive&amp; boost::archive::detail::interface_oarchive&lt;Archive&gt;::operator&lt;&lt;(T&amp;) [with T = const boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/serialization/collections_save_imp.hpp:60:�� instantiated from �void boost::serialization::stl::save_collection(Archive&amp;, const Container&amp;) [with Archive = boost::mpi::detail::content_oarchive, Container = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:53:�� instantiated from �void boost::serialization::save(Archive&amp;, const std::vector&lt;U, Allocator&gt;&amp;, unsigned int, mpl_::false_) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:119:�� instantiated from �void boost::serialization::save(Archive&amp;, const std::vector&lt;U, Allocator&gt;&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_free.hpp:45:�� instantiated from �static void boost::serialization::free_saver&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_free.hpp:74:�� instantiated from �void boost::serialization::split_free(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:139:�� instantiated from �void boost::serialization::serialize(Archive&amp;, std::vector&lt;U, Allocator&gt;&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:144:�� instantiated from �void boost::archive::detail::oserializer&lt;Archive, T&gt;::save_object_data(boost::archive::detail::basic_oarchive&amp;, const void*) const [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
deneme.cpp:34:�� instantiated from here<br>/boost/include/boost-1_37/boost/mpi/datatype.hpp:184: error: no matching function for call to �assertion_failed(mpl_::failed************ boost::mpi::is_mpi_datatype&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;::************)�<br>
/boost/include/boost-1_37/boost/mpi/detail/mpi_datatype_cache.hpp: In member function �ompi_datatype_t* boost::mpi::detail::mpi_datatype_map::datatype(const T&amp;, typename boost::disable_if&lt;boost::mpi::is_mpi_builtin_datatype&lt;T&gt;, void&gt;::type*) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�:<br>
/boost/include/boost-1_37/boost/mpi/datatype.hpp:185:�� instantiated from �ompi_datatype_t* boost::mpi::get_mpi_datatype(const T&amp;) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/detail/mpi_datatype_primitive.hpp:96:�� instantiated from �void boost::mpi::detail::mpi_datatype_primitive::save(const T&amp;) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:95:�� instantiated from �static void boost::archive::save_access::save_primitive(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:212:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::save_primitive::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive&lt;Archive&gt;::save_override(const T&amp;, int) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive&amp; boost::archive::detail::interface_oarchive&lt;Archive&gt;::operator&lt;&lt;(T&amp;) [with T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/serialization/nvp.hpp:78:�� instantiated from �void boost::serialization::nvp&lt;T&gt;::save(Archivex&amp;, unsigned int) const [with Archivex = boost::mpi::detail::content_oarchive, T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/access.hpp:93:�� instantiated from �static void boost::serialization::access::member_save(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_member.hpp:43:�� instantiated from �static void boost::serialization::detail::member_saver&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_member.hpp:69:�� instantiated from �void boost::serialization::split_member(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/nvp.hpp:88:�� instantiated from �void boost::serialization::nvp&lt;T&gt;::serialize(Archive&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/access.hpp:109:�� instantiated from �static void boost::serialization::access::serialize(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:74:�� instantiated from �void boost::serialization::serialize(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:220:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::save_only::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive&lt;Archive&gt;::save_override(const T&amp;, int) [with T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive&amp; boost::archive::detail::interface_oarchive&lt;Archive&gt;::operator&lt;&lt;(T&amp;) [with T = const boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/serialization/collections_save_imp.hpp:60:�� instantiated from �void boost::serialization::stl::save_collection(Archive&amp;, const Container&amp;) [with Archive = boost::mpi::detail::content_oarchive, Container = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:53:�� instantiated from �void boost::serialization::save(Archive&amp;, const std::vector&lt;U, Allocator&gt;&amp;, unsigned int, mpl_::false_) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:119:�� instantiated from �void boost::serialization::save(Archive&amp;, const std::vector&lt;U, Allocator&gt;&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_free.hpp:45:�� instantiated from �static void boost::serialization::free_saver&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_free.hpp:74:�� instantiated from �void boost::serialization::split_free(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:139:�� instantiated from �void boost::serialization::serialize(Archive&amp;, std::vector&lt;U, Allocator&gt;&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:144:�� instantiated from �void boost::archive::detail::oserializer&lt;Archive, T&gt;::save_object_data(boost::archive::detail::basic_oarchive&amp;, const void*) const [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
deneme.cpp:34:�� instantiated from here<br>/boost/include/boost-1_37/boost/mpi/detail/mpi_datatype_cache.hpp:68: error: no matching function for call to �assertion_failed(mpl_::failed************ boost::mpi::is_mpi_datatype&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;::************)�<br>
/boost/include/boost-1_37/boost/mpi/detail/mpi_datatype_oarchive.hpp: In constructor �boost::mpi::detail::mpi_datatype_oarchive::mpi_datatype_oarchive(const T&amp;) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�:<br>
/boost/include/boost-1_37/boost/mpi/detail/mpi_datatype_cache.hpp:75:�� instantiated from �ompi_datatype_t* boost::mpi::detail::mpi_datatype_map::datatype(const T&amp;, typename boost::disable_if&lt;boost::mpi::is_mpi_builtin_datatype&lt;T&gt;, void&gt;::type*) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/datatype.hpp:185:�� instantiated from �ompi_datatype_t* boost::mpi::get_mpi_datatype(const T&amp;) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/detail/mpi_datatype_primitive.hpp:96:�� instantiated from �void boost::mpi::detail::mpi_datatype_primitive::save(const T&amp;) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:95:�� instantiated from �static void boost::archive::save_access::save_primitive(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:212:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::save_primitive::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive&lt;Archive&gt;::save_override(const T&amp;, int) [with T = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive&amp; boost::archive::detail::interface_oarchive&lt;Archive&gt;::operator&lt;&lt;(T&amp;) [with T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/serialization/nvp.hpp:78:�� instantiated from �void boost::serialization::nvp&lt;T&gt;::save(Archivex&amp;, unsigned int) const [with Archivex = boost::mpi::detail::content_oarchive, T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/access.hpp:93:�� instantiated from �static void boost::serialization::access::member_save(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_member.hpp:43:�� instantiated from �static void boost::serialization::detail::member_saver&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_member.hpp:69:�� instantiated from �void boost::serialization::split_member(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/nvp.hpp:88:�� instantiated from �void boost::serialization::nvp&lt;T&gt;::serialize(Archive&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/access.hpp:109:�� instantiated from �static void boost::serialization::access::serialize(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:74:�� instantiated from �void boost::serialization::serialize(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:220:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::save_only::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&amp;, const T&amp;) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive&lt;Archive&gt;::save_override(const T&amp;, int) [with T = boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive&amp; boost::archive::detail::interface_oarchive&lt;Archive&gt;::operator&lt;&lt;(T&amp;) [with T = const boost::serialization::nvp&lt;const std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;, Archive = boost::mpi::detail::content_oarchive]�<br>
/boost/include/boost-1_37/boost/serialization/collections_save_imp.hpp:60:�� instantiated from �void boost::serialization::stl::save_collection(Archive&amp;, const Container&amp;) [with Archive = boost::mpi::detail::content_oarchive, Container = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:53:�� instantiated from �void boost::serialization::save(Archive&amp;, const std::vector&lt;U, Allocator&gt;&amp;, unsigned int, mpl_::false_) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:119:�� instantiated from �void boost::serialization::save(Archive&amp;, const std::vector&lt;U, Allocator&gt;&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_free.hpp:45:�� instantiated from �static void boost::serialization::free_saver&lt;Archive, T&gt;::invoke(Archive&amp;, const T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/split_free.hpp:74:�� instantiated from �void boost::serialization::split_free(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/vector.hpp:139:�� instantiated from �void boost::serialization::serialize(Archive&amp;, std::vector&lt;U, Allocator&gt;&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, Allocator = std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&amp;, T&amp;, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
/boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:144:�� instantiated from �void boost::archive::detail::oserializer&lt;Archive, T&gt;::save_object_data(boost::archive::detail::basic_oarchive&amp;, const void*) const [with Archive = boost::mpi::detail::content_oarchive, T = std::vector&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;, std::allocator&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt; &gt;]�<br>
deneme.cpp:34:�� instantiated from here<br>/boost/include/boost-1_37/boost/mpi/detail/mpi_datatype_oarchive.hpp:36: error: no matching function for call to �assertion_failed(mpl_::failed************ boost::mpi::is_mpi_datatype&lt;std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; &gt;::************)�<br>
<br><br><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: &#39;Times New Roman&#39;; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><span class="Apple-style-span" style="font-family: sans-serif;"><h3 class="title" style="text-align: left; margin: 1em 0em 0.5em; font-weight: bold; font-size: 21px;">
Separating structure from content</h3></span></span>