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 "mpi_ver_headers.h"<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<std::string> 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 < world.size(); i++){<br> �16������������ for(int l = 1; l < 3; l++)� <br>�17���������������� a.push_back("A");<br>�18������������ sz = a.size();<br>�19������������ world.send(i, 3, sz);<br>�20������������ world.send(i, 1, &a[0], sz);<br> �21������������ world.recv(i, 2);<br>�22�������� }<br>�23���� }<br>�24���� if(world.rank() > 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, &a[0], sz);<br>�30�������� for(int l=0; l < sz; l++)<br>�31������������ cout << a[l] << "\t";<br> �32�������� cout << endl;<br>�33�������� world.send(0, 2);<br>�34���� }�� <br>�35 }�� <br><br>"mpi_ver_headers.h" is <br>........ <br>29 #include <boost/mpi.hpp><br>�30 #include <boost/config.hpp> <br> �31 #include <boost/tokenizer.hpp><br>�32 #include <boost/mpi/datatype.hpp><br>�33 #include <boost/mpi/allocator.hpp><br>�34 #include <boost/archive/tmpdir.hpp><br>�35 #include <boost/archive/tmpdir.hpp><br> �36 #include <boost/mpi/environment.hpp><br>�37 #include <boost/mpi/collectives.hpp><br>�38 #include <boost/mpi/communicator.hpp><br>�39 #include <boost/serialization/map.hpp><br>�40 #include <boost/serialization/export.hpp><br> �41 #include <boost/serialization/vector.hpp> <br>�42 #include <boost/serialization/access.hpp><br>�43 #include <boost/serialization/string.hpp><br>�44 #include <boost/serialization/utility.hpp><br> �45 #include <boost/archive/text_oarchive.hpp><br>�46 #include <boost/archive/text_iarchive.hpp><br>�47 #include <boost/serialization/utility.hpp><br>�48 #include <boost/serialization/hash_map.hpp><br> �49 #include <boost/archive/binary_oarchive.hpp><br>�50 #include <boost/archive/binary_iarchive.hpp><br>�51 #include <boost/mpi/skeleton_and_content.hpp><br>�52 #include <boost/serialization/base_object.hpp><br> �53 #include <boost/serialization/base_object.hpp><br>�54 #include <boost/progress.hpp><br>�55 #include <boost/date_time/iso_format.hpp><br>�56 #include "boost/date_time/gregorian/gregorian.hpp"<br> �57 #include <boost/date_time/posix_time/posix_time.hpp><br>�58 #include <boost/date_time/posix_time/posix_time_types.hpp><br>�59 #include <boost/date_time/gregorian/greg_serialize.hpp><br>�60 #include <boost/date_time/posix_time/time_serialize.hpp><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&) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�:<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&) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:95:�� instantiated from �static void boost::archive::save_access::save_primitive(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:212:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::save_primitive::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive<Archive>::save_override(const T&, int) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive& boost::archive::detail::interface_oarchive<Archive>::operator<<(T&) [with T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/serialization/nvp.hpp:78:�� instantiated from �void boost::serialization::nvp<T>::save(Archivex&, unsigned int) const [with Archivex = boost::mpi::detail::content_oarchive, T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/serialization/access.hpp:93:�� instantiated from �static void boost::serialization::access::member_save(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_member.hpp:43:�� instantiated from �static void boost::serialization::detail::member_saver<Archive, T>::invoke(Archive&, const T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_member.hpp:69:�� instantiated from �void boost::serialization::split_member(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/nvp.hpp:88:�� instantiated from �void boost::serialization::nvp<T>::serialize(Archive&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/serialization/access.hpp:109:�� instantiated from �static void boost::serialization::access::serialize(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:74:�� instantiated from �void boost::serialization::serialize(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:220:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::save_only::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive<Archive>::save_override(const T&, int) [with T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive& boost::archive::detail::interface_oarchive<Archive>::operator<<(T&) [with T = const boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, 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&, const Container&) [with Archive = boost::mpi::detail::content_oarchive, Container = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:53:�� instantiated from �void boost::serialization::save(Archive&, const std::vector<U, Allocator>&, unsigned int, mpl_::false_) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:119:�� instantiated from �void boost::serialization::save(Archive&, const std::vector<U, Allocator>&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_free.hpp:45:�� instantiated from �static void boost::serialization::free_saver<Archive, T>::invoke(Archive&, const T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/split_free.hpp:74:�� instantiated from �void boost::serialization::split_free(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:139:�� instantiated from �void boost::serialization::serialize(Archive&, std::vector<U, Allocator>&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:144:�� instantiated from �void boost::archive::detail::oserializer<Archive, T>::save_object_data(boost::archive::detail::basic_oarchive&, const void*) const [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<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<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >::************)�<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&, typename boost::disable_if<boost::mpi::is_mpi_builtin_datatype<T>, void>::type*) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�:<br> /boost/include/boost-1_37/boost/mpi/datatype.hpp:185:�� instantiated from �ompi_datatype_t* boost::mpi::get_mpi_datatype(const T&) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<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&) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:95:�� instantiated from �static void boost::archive::save_access::save_primitive(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:212:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::save_primitive::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive<Archive>::save_override(const T&, int) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive& boost::archive::detail::interface_oarchive<Archive>::operator<<(T&) [with T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/serialization/nvp.hpp:78:�� instantiated from �void boost::serialization::nvp<T>::save(Archivex&, unsigned int) const [with Archivex = boost::mpi::detail::content_oarchive, T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/serialization/access.hpp:93:�� instantiated from �static void boost::serialization::access::member_save(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_member.hpp:43:�� instantiated from �static void boost::serialization::detail::member_saver<Archive, T>::invoke(Archive&, const T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_member.hpp:69:�� instantiated from �void boost::serialization::split_member(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/nvp.hpp:88:�� instantiated from �void boost::serialization::nvp<T>::serialize(Archive&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/serialization/access.hpp:109:�� instantiated from �static void boost::serialization::access::serialize(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:74:�� instantiated from �void boost::serialization::serialize(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:220:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::save_only::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive<Archive>::save_override(const T&, int) [with T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive& boost::archive::detail::interface_oarchive<Archive>::operator<<(T&) [with T = const boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, 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&, const Container&) [with Archive = boost::mpi::detail::content_oarchive, Container = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:53:�� instantiated from �void boost::serialization::save(Archive&, const std::vector<U, Allocator>&, unsigned int, mpl_::false_) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:119:�� instantiated from �void boost::serialization::save(Archive&, const std::vector<U, Allocator>&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_free.hpp:45:�� instantiated from �static void boost::serialization::free_saver<Archive, T>::invoke(Archive&, const T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/split_free.hpp:74:�� instantiated from �void boost::serialization::split_free(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:139:�� instantiated from �void boost::serialization::serialize(Archive&, std::vector<U, Allocator>&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:144:�� instantiated from �void boost::archive::detail::oserializer<Archive, T>::save_object_data(boost::archive::detail::basic_oarchive&, const void*) const [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<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<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >::************)�<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&) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�:<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&, typename boost::disable_if<boost::mpi::is_mpi_builtin_datatype<T>, void>::type*) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/mpi/datatype.hpp:185:�� instantiated from �ompi_datatype_t* boost::mpi::get_mpi_datatype(const T&) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<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&) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:95:�� instantiated from �static void boost::archive::save_access::save_primitive(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:212:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::save_primitive::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive<Archive>::save_override(const T&, int) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive& boost::archive::detail::interface_oarchive<Archive>::operator<<(T&) [with T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/serialization/nvp.hpp:78:�� instantiated from �void boost::serialization::nvp<T>::save(Archivex&, unsigned int) const [with Archivex = boost::mpi::detail::content_oarchive, T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/serialization/access.hpp:93:�� instantiated from �static void boost::serialization::access::member_save(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_member.hpp:43:�� instantiated from �static void boost::serialization::detail::member_saver<Archive, T>::invoke(Archive&, const T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_member.hpp:69:�� instantiated from �void boost::serialization::split_member(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/nvp.hpp:88:�� instantiated from �void boost::serialization::nvp<T>::serialize(Archive&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = const std::basic_string<char, std::char_traits<char>, std::allocator<char> >]�<br> /boost/include/boost-1_37/boost/serialization/access.hpp:109:�� instantiated from �static void boost::serialization::access::serialize(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:74:�� instantiated from �void boost::serialization::serialize(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:220:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::save_only::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:294:�� instantiated from �static void boost::archive::detail::save_non_pointer_type<Archive, T>::invoke(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:506:�� instantiated from �void boost::archive::save(Archive&, const T&) [with Archive = boost::mpi::detail::content_oarchive, T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/mpi/detail/ignore_skeleton_oarchive.hpp:46:�� instantiated from �void boost::mpi::detail::ignore_skeleton_oarchive<Archive>::save_override(const T&, int) [with T = boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, Archive = boost::mpi::detail::content_oarchive]�<br> /boost/include/boost-1_37/boost/archive/detail/interface_oarchive.hpp:64:�� instantiated from �Archive& boost::archive::detail::interface_oarchive<Archive>::operator<<(T&) [with T = const boost::serialization::nvp<const std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, 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&, const Container&) [with Archive = boost::mpi::detail::content_oarchive, Container = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:53:�� instantiated from �void boost::serialization::save(Archive&, const std::vector<U, Allocator>&, unsigned int, mpl_::false_) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:119:�� instantiated from �void boost::serialization::save(Archive&, const std::vector<U, Allocator>&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/split_free.hpp:45:�� instantiated from �static void boost::serialization::free_saver<Archive, T>::invoke(Archive&, const T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/split_free.hpp:74:�� instantiated from �void boost::serialization::split_free(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/serialization/vector.hpp:139:�� instantiated from �void boost::serialization::serialize(Archive&, std::vector<U, Allocator>&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, U = std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Allocator = std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >]�<br> /boost/include/boost-1_37/boost/serialization/serialization.hpp:133:�� instantiated from �void boost::serialization::serialize_adl(Archive&, T&, unsigned int) [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<br> /boost/include/boost-1_37/boost/archive/detail/oserializer.hpp:144:�� instantiated from �void boost::archive::detail::oserializer<Archive, T>::save_object_data(boost::archive::detail::basic_oarchive&, const void*) const [with Archive = boost::mpi::detail::content_oarchive, T = std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >]�<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<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >::************)�<br> <br><br><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: 'Times New Roman'; 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>