Boost C++ Libraries: Ticket #2007: Missing header in Boost.MPI https://svn.boost.org/trac10/ticket/2007 <p> Compiling the small example in the attachment using Boost 1.35.0 and GCC 4.1.2 I get lots of errors similar to </p> <p> undefined reference to `boost::archive::detail::archive_pointer_iserializer&lt;boost::mpi::detail::forward_skeleton_iarchive&lt;boost::mpi::packed_skeleton_iarchive, boost::mpi::packed_iarchive&gt; &gt;::~archive_pointer_iserializer()' </p> <p> A workaround is to explicitly include boost/archive/impl/archive_pointer_?serializer.ipp. I think, these headers should be included either in Boost.MPI or in Boost.Serialization. </p> <p> Best regards, Manuel </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/2007 Trac 1.4.3 manuel.freiberger@… Thu, 12 Jun 2008 15:15:26 GMT attachment set https://svn.boost.org/trac10/ticket/2007 https://svn.boost.org/trac10/ticket/2007 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">mpi-test.cpp</span> </li> </ul> <p> Example code </p> Ticket Matthias Troyer Sat, 14 Jun 2008 20:29:59 GMT <link>https://svn.boost.org/trac10/ticket/2007#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2007#comment:1</guid> <description> <p> Do you link with the Boost.MPI library or just include the headers? </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Matthias Troyer</dc:creator> <pubDate>Sat, 14 Jun 2008 20:30:09 GMT</pubDate> <title>owner changed https://svn.boost.org/trac10/ticket/2007#comment:2 https://svn.boost.org/trac10/ticket/2007#comment:2 <ul> <li><strong>owner</strong> changed from <span class="trac-author">Douglas Gregor</span> to <span class="trac-author">Matthias Troyer</span> </li> </ul> Ticket Matthias Troyer Sat, 14 Jun 2008 20:50:43 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/2007#comment:3 https://svn.boost.org/trac10/ticket/2007#comment:3 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">invalid</span> </li> </ul> <p> I'm closing this since this is most likely due to not linking against the Boost.MPI library </p> Ticket manuel.freiberger@… Mon, 16 Jun 2008 06:29:48 GMT status changed; resolution deleted https://svn.boost.org/trac10/ticket/2007#comment:4 https://svn.boost.org/trac10/ticket/2007#comment:4 <ul> <li><strong>status</strong> <span class="trac-field-old">closed</span> → <span class="trac-field-new">reopened</span> </li> <li><strong>resolution</strong> <span class="trac-field-deleted">invalid</span> </li> </ul> <p> Yes, I _do_ link with Boost.MPI. Here is the command I used: </p> <blockquote> <p> mpic++ -lboost_serialization-mt -lboost_mpi-mt -o mpi-test mpi-test.cpp </p> </blockquote> <p> I tried to link the program with and without Boost.MPI and with and without the *.ipp files included. Including the files but not linking against Boost.MPI leads at least to undefined references to the communicator and so on. The program really only builds when both the *ipp files and the Boost.MPI library are included. </p> <p> During the weekend I also found a discussion on the mailing list which is related to the problem I think: <a class="ext-link" href="http://groups.google.no/group/boost-list/browse_thread/thread/9a50fcdaa867950c/3c3b5ac8f7919157?#3c3b5ac8f7919157"><span class="icon">​</span>http://groups.google.no/group/boost-list/browse_thread/thread/9a50fcdaa867950c/3c3b5ac8f7919157?#3c3b5ac8f7919157</a> Unfortunately, the discussion did not lead to any solution, as far as I can see. </p> <p> Would it be of help if I uploaded the whole log-file containing the linker errors? </p> <p> /Manuel </p> Ticket manuel.freiberger@… Mon, 16 Jun 2008 06:32:54 GMT attachment set https://svn.boost.org/trac10/ticket/2007 https://svn.boost.org/trac10/ticket/2007 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">log.zip</span> </li> </ul> <p> Output during build of test program </p> Ticket anonymous Mon, 16 Jun 2008 09:20:03 GMT <link>https://svn.boost.org/trac10/ticket/2007#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2007#comment:5</guid> <description> <p> Can you try this with the current svn version? The *.ipp files should never be included. </p> </description> <category>Ticket</category> </item> <item> <author>manuel.freiberger@…</author> <pubDate>Mon, 16 Jun 2008 14:33:45 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/2007#comment:6 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2007#comment:6</guid> <description> <p> Ok, I downloaded the current Boost SVN version and compiled the sample program against it. If I do not include the *ipp files, I get the same errors as above. If I include the *ipp files, compiling and linking works, but I get the following error at execution: </p> <blockquote> <p> mpirun -np 2 --hostfile myhosts ./mpi-test.exe ./mpi-test.exe: symbol lookup error: ./mpi-test.exe: undefined symbol: _ZN5boost13serialization6detail27extended_type_info_typeid_013type_registerERKSt9type_info ./mpi-test.exe: symbol lookup error: ./mpi-test.exe: undefined symbol: _ZN5boost13serialization6detail27extended_type_info_typeid_013type_registerERKSt9type_info </p> </blockquote> <p> Probably this is a linker issue? The full version string of my compiler is </p> <blockquote> <p> g++ (GCC) 4.1.2 20061115 (prerelease) (SUSE Linux) </p> </blockquote> <p> /Manuel </p> </description> <category>Ticket</category> </item> <item> <dc:creator>anonymous</dc:creator> <pubDate>Mon, 16 Jun 2008 14:50:33 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/2007#comment:7 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2007#comment:7</guid> <description> <p> I will look into it, The thread you mentioned above went nowhere since the original poster never replied after we checked in some patches. </p> <p> One more thing to check: have you confirmed that serialization and deserialization works for a text or XML archive? </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Matthias Troyer</dc:creator> <pubDate>Mon, 16 Jun 2008 19:23:37 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/2007#comment:8 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2007#comment:8</guid> <description> <p> Can you try again with the current svn version? It now compiles, links and runs on my machine. </p> </description> <category>Ticket</category> </item> <item> <author>manuel.freiberger@…</author> <pubDate>Tue, 17 Jun 2008 15:06:37 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/2007#comment:9 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/2007#comment:9</guid> <description> <p> I just tried the recent SVN version and everything works fine for me too, now! There is no need any longer to include the *.ipp files! </p> <p> Thank you very much for your help! </p> <p> /Manuel </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Matthias Troyer</dc:creator> <pubDate>Tue, 17 Jun 2008 15:46:55 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/2007#comment:10 https://svn.boost.org/trac10/ticket/2007#comment:10 <ul> <li><strong>status</strong> <span class="trac-field-old">reopened</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> Ticket