Boost logo

Boost Users :

Subject: Re: [Boost-users] [mpi] many undefined references toserialize<boost::mpi::detail::mpi_datatype_oarchive>
From: Brian Budge (brian.budge_at_[hidden])
Date: 2012-09-11 18:30:29


On Tue, Sep 11, 2012 at 11:29 AM, Robert Ramey <ramey_at_[hidden]> wrote:
> Brian Budge wrote:
>> So to Robert's question, I don't think this is something that could be
>> baked into the boost_mpi.so library, since they rely on my own
>> classes. ...
>
> look at .../libs/serialization/src/binary_oarchive.cpp
>
> This file contains the explict instantiations that are
> added to the library. I would expect that something
> like this could be made for mpi archives.
>
> Robert Ramey

I think you're right Robert. I can get my types to serialize fine
with the boost::binary_*archive archives, but not with the mpi ones.
It's strange because I can get it to work for send, but not recv. I
get an exception related to unregistered type.

Indeed if I go and manually serialize every message pointer to a char
buffer vis binary_oarchive, and send that via boost mpi, and manually
deserialize on the other side from char buffer via binary_iarchive, my
program works.

I'm unsure what exactly might need to be instantiated in boost::mpi though.

Thanks,
  Brian


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net