Spack: openmpi links host libgpfs.so with no way to exclude

Created on 30 Mar 2020  路  1Comment  路  Source: spack/spack

We are installing openmpi on a host that happens to have GPFS installed. openmpi detects gpfs.h and links in libgpfs.so; but this prevents the build from being used on other systems that do not have GPFS installed. (It also means that the build depends on state that isn't expressed in its spec.)

  • Why does openmpi see gpfs.h or libgpfs.so? I would have expected the build environment to not expose these during ./configure.
  • If I built this package with the same spec on two similar systems, one with GPFS and one without, would I end up with two different builds that share the same hash?
  • I am working on a modification to the openmpi package that would allow this to be controlled; but my first attempt hasn't had the desired effect. See https://www.mail-archive.com/[email protected]//msg33758.html

Spack version

$ spack --version
0.14.1-415-cbcac72

Steps to reproduce the issue

$ rpm -ql gpfs.base | grep -i 'gpfs\.h'
/usr/lpp/mmfs/include/gpfs.h
$ spack install openmpi

Error Message

No error message in spack; but on hosts that then don't have GPFS.

   libgpfs.so => not found
   libpsm2.so.2 => not found

Information on your system

$ cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 7.6 (Maipo)

General information

  • [X] I have run spack --version and reported the version of Spack
  • [X] I have searched the issues of this repo and believe this is not a duplicate
bug impact-low

Most helpful comment

I think I've got a working patch, but we're still testing internally before I submit the PR.

>All comments

I think I've got a working patch, but we're still testing internally before I submit the PR.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

adamjstewart picture adamjstewart  路  3Comments

adrienbernede picture adrienbernede  路  3Comments

jychoi-hpc picture jychoi-hpc  路  3Comments

citibeth picture citibeth  路  3Comments

ax3l picture ax3l  路  3Comments