I confront the problem in linking error using boost::mpi which is included in my static library.
The error is almost due to undefined reference to not boost::mpi but to MPI variables & functions such as
ompi_mpi_comm_null, MPI::Comm::Comm() etc.
When I build the static library which uses boost::mpi & MPI, successfully link is finished. I feel that this is due to some linker options or dependent relation of libraries in the linking stage of executable using the static library.
Seemingly, the static library is dealt as openMPI-based one though I use Intel-MPI-based one (MPICH-like). Though to build my static library succeeded, the library is based on openmpi.
I suppose that boost::mpi is generic library able to adapt to openmpi, intel mpi, and mpich.
Could you know how to force boost::mpi to use one of the above three implementations?