All,<div><br></div><div>I think the problemI mention below with respect to boost::mpi, openmpi and life on sparc is the following:</div><div><br></div><div> - boost::mpi was compiled with lam on sparc</div><div> - openmpi is available on sparc and is the default implementation thanks to mpi-default-dev</div>
<div> - life build-depends on mpi-default-dev (and hence openmpi). When life is being compiled</div><div>   it instantiates the boost::mpi object with openmpi (instead of lam) and at link time, the linker </div><div>   fails to find the boost::mpi symbols compiled with openmpi.</div>
<div><br></div><div>I will submit a bug on boost/boost::mpi  in the next few days unless an upload fixes this in the mean time</div><div><br></div><div>Best regards</div><div>C.<br><br><div class="gmail_quote">On Sun, Jun 6, 2010 at 9:37 AM, Christophe Prud&#39;homme <span dir="ltr">&lt;<a href="mailto:prudhomm@debian.org">prudhomm@debian.org</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div><br></div> 1. <a href="http://packages.qa.debian.org/l/life.html" target="_blank">http://packages.qa.debian.org/l/life.html</a><div>
<a href="http://packages.qa.debian.org/l/life.html" target="_blank"></a> 2. <a href="https://buildd.debian.org/status/package.php?p=life#fail-life-sparc" target="_blank">https://buildd.debian.org/status/package.php?p=life#fail-life-sparc</a><div>
<div></div><div class="h5"><br>
<br><div class="gmail_quote">On Sun, Jun 6, 2010 at 9:36 AM, Christophe Prud&#39;homme <span dir="ltr">&lt;<a href="mailto:prudhomm@debian.org" target="_blank">prudhomm@debian.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

All,<div><br></div><div>for the last few weeks, I have life [1]  failing to compile on sparc (see below). Boost::MPI looks for</div><div>OpenMPI but I was told that that the MPI implementation on sparc is LAM (is that right?)</div>


<div><br></div><div>Life and Boost::Mpi use mpi-default-dev in Build-Depends . </div><div>It seems like there is something fishy with MPI on sparc or am I missing something ?</div><div><br></div><div>thank you very much in advance for your help</div>


<div>Best regards</div><div>C.</div><div><span style="font-family:&#39;Times New Roman&#39;;font-size:medium"><pre>CMakeFiles/life_doc_bratu.dir/bratu.cpp.o: In function `void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)&#39;:</pre>


<pre>bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x11c): undefined reference to `boost::mpi::detail::packed_archive_recv(ompi_communicator_t*, int, int, boost::mpi::packed_iarchive&amp;, ompi_status_public_t&amp;)&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x24c): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x268): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x27c): undefined reference to `boost::mpi::detail::packed_archive_recv(ompi_communicator_t*, int, int, boost::mpi::packed_iarchive&amp;, ompi_status_public_t&amp;)&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x39c): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x404): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x414): undefined reference to `boost::mpi::detail::packed_archive_send(ompi_communicator_t*, int, int, boost::mpi::packed_oarchive const&amp;)&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x4c8): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x740): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x758): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x76c): undefined reference to `boost::mpi::detail::packed_archive_recv(ompi_communicator_t*, int, int, boost::mpi::packed_iarchive&amp;, ompi_status_public_t&amp;)&#39;
bratu.cpp:(.text._ZN5boost3mpi10all_reduceISt6vectorIiSaIiEEN4Life6detail11vector_plusIiEEEEvRKNS0_12communicatorERKT_RSC_T0_[void boost::mpi::all_reduce&lt;std::vector&lt;int, std::allocator&lt;int&gt; &gt;, Life::detail::vector_plus&lt;int&gt; &gt;(boost::mpi::communicator const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt; const&amp;, std::vector&lt;int, std::allocator&lt;int&gt; &gt;&amp;, Life::detail::vector_plus&lt;int&gt;)]+0x89c): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
CMakeFiles/life_doc_bratu.dir/bratu.cpp.o: In function `Life::Bratu&lt;2, 2, Life::Simplex&gt;::run()&#39;:
bratu.cpp:(.text._ZN4Life5BratuILi2ELi2ENS_7SimplexEE3runEv[Life::Bratu&lt;2, 2, Life::Simplex&gt;::run()]+0xc18): undefined reference to `boost::mpi::communicator::operator ompi_communicator_t*() const&#39;
collect2: ld returned 1 exit status</pre></span><div><br></div><div><br></div></div>
</blockquote></div><br></div></div></div>
</blockquote></div><br></div>