I just wanted to share a workaround I came up with for this openmpi configure issue.
When specifying header paths in configure, openmpi adds an /include subpath the --with-pmi specifier(and others). This is documented very clearly. Recently, in switching over to internal pmix, I wanted to ripout the pmix-provided pmi.h and pmi2.h development headers and use those supplied by slurm since openmpiwill link to the slurm-provided pmi libraries and I like to match headers and libraries properly. (Yes the headersare similar but they are not identical). On my distro, the pmix pmi.h and pmi2.h headers were in /usr/include, which openmpi finds with: --with-pmi=/usr After removing the pmix development headers, I am left with the slurm headers are in /usr/include/slurm.Unfortunately the configure item: --with-pmi=/usr/include/slurm fails to locate the pmi.h/pmi2.h slurm headers due to the addition of that /include subpath, i.e. they are notin /usr/include/slurm/include. There is no way to specify an absolute path to a header directory. So here'swhat I did: (unpack tarball to /path/to/openmpi-2.1.1)cd /path/to/openmpi-2.1.1mkdir slurmln -s /usr/include/slurm /path/to/openmpi-2.1.1/slurm/include then configure as follows: ./configure --with-pmi=/path/to/openmpi-2.1.1/slurm The configure adds the /include subpath and finds the slurm pmi/pmi2 headers through my symlink. Cumbersome, but it works. Phil
_______________________________________________ devel mailing list [email protected] https://lists.open-mpi.org/mailman/listinfo/devel
