MPI is a standard with multiple implementations, some academic and others commercial. MPI implementations typically wrap the compiler, so to use it you would normally build your code with
mpicc (which adds MPI’s include and library folder paths).
The problem is that many RPM-based Linux distributions seem to install MPI releases outside the PATH. For example, Fedora puts OpenMPI in
/usr/lib64/openmpi/bin/ and MPICH in
/usr/lib64/mpich/bin. I suggested a Merge request which looks for MPI’s installed outside path, but it has a problem: it introduces preference in the order which MPI releases are chosen.
@brad.king suggested I put it here for discussion (makes sense), so here I am.
What do you think?
To clarify, currently if you install any MPI on most RPM-based Linux distributions and try FindMPI.cmake it fails to find it. Other distributions do place MPI in their path, so it’s not like FindMPI is broken…