Jonathon,
GPFS is used by both the ROMIO component (that comes from MPICH) and the
fs/gpfs component that is used by ompio
(native Open MPI MPI-IO so to speak).
you should be able to disable both by running
ac_cv_header_gpfs_h=no configure --without-gpfs ...
Note that Open MPI is modular by default (e.g. unless you configure
--disable-dlopen), and if you run it on
a node that does not have libgpfs.so[.version], you might only see a
warning and Open MPI will use ompio
(note that might not apply on Lustre since only ROMIO is used on this
filesystem)
Cheers,
Gilles
On 3/30/2020 8:25 AM, Jonathon A Anderson via users wrote:
We are trying to build Open MPI on a system that happens to have GPFS
installed. This appears to cause Open MPI to detect gpfs.h and link against
libgpfs.so. We are trying to build a central software stack for use on multiple
clusters, some of which do not have GPFS. (It is our experience that this
provokes an error, as libgpfs.so is not found on these clusters.) To
accommodate this I want to build openmpi explicitly without linking against
GPFS.
I tried to accomplish this with
./configure --with-io-romio-flags='--with-file-system=ufs+nfs'
But gpfs was still linked.
configure:397895: result: -lhwloc -ldl -lz -lpmi2 -lrt -lgpfs -lutil -lm
-lfabric
How can I tell Open MPI to not link against GPFS?
~jonathon
p.s., I realize that I could just build on a system that does not have GPFS
installed; but I am trying to genericize this to encapsulate in the Spack
package. I also don't understand why the Spack package is detecting gpfs.h in
the first place, as I thought Spack tries to isolate its build environment from
the host system; but I'll ask them that in a separate message.