Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing MPI::MPI_C dependency in boost::mpi targets #67

Open
Neumann-A opened this issue Mar 9, 2024 · 1 comment
Open

Missing MPI::MPI_C dependency in boost::mpi targets #67

Neumann-A opened this issue Mar 9, 2024 · 1 comment

Comments

@Neumann-A
Copy link

BoostInstall.cmake does simply not check for MPI_C only MPI_CXX.

@pdimov pdimov transferred this issue from boostorg/cmake Mar 9, 2024
@pdimov
Copy link
Member

pdimov commented Mar 9, 2024

I believe that MPI_CXX is the correct dependency. According to the documentation of FindMPI (https://cmake.org/cmake/help/v3.29/module/FindMPI.html),

The module exposes the components C, CXX, MPICXX and Fortran. Each of these controls the various MPI languages to search for. The difference between CXX and MPICXX is that CXX refers to the MPI C API being usable from C++, whereas MPICXX refers to the MPI-2 C++ API that was removed again in MPI-3.

Since Boost.MPI is a C++ library and has no C source files, MPI_CXX should be the right target, according to the documentation above.

That said, the CMakeLists.txt file for MPI has been changed to link to MPI_C instead (boostorg/mpi@f2f586e). I don't think this change is correct, for the reason given above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants