The C++ bindings have been removed from the MPI standard and Open-MPI no longer builds them by default. Because of this the C++ bindings used by the example are not present in a default install of open-mpi. However CMAKE detects the install of open-mpi and proceeds as if open-mpi C++ bindings are present. Currently if you install open-MPI with `--enable-mpi-cxx-bindings` the bindings will be present (I have not had the opportunity to verify this), but a purely default install of open-mpi will cause parallel/MPI to be built despite the lack of necessary bindings. Possible solutions: Use Boost.MPI to get C++ bindings of MPI. Rewrite to use the C interface. Improve cmake open-mpi detection to check for C++ binding presence See Also: see: https://raw.githubusercontent.com/open-mpi/ompi/v4.0.x/NEWS
We keep finding a solution for using MPI-3 and other MPI tools. We are lack of manpower to explore the issue more so far. Te issue is pending for a while.