intel-mpi: add libfabrics directory to SPACK_COMPILER_EXTRA_RPATHS (#15214)

workaround for not finding an appropriate libfabrics.so with Intel
MPI 2019+. Fixes #11140 and #12493
This commit is contained in:
TZ 2020-05-16 17:40:40 +02:00 committed by GitHub
parent 983f05ac41
commit 2ebadbc267
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1073,6 +1073,15 @@ def _setup_dependent_env_callback(
# which performs dizzyingly similar but necessarily different
# actions, and (b) function code leaves a bit more breathing
# room within the suffocating corset of flake8 line length.
# Intel MPI since 2019 depends on libfabric which is not in the
# lib directory but in a directory of its own which should be
# included in the rpath
if self.version >= ver('2019'):
d = ancestor(self.component_lib_dir('mpi'))
libfabrics_path = os.path.join(d, 'libfabric', 'lib')
env.append_path('SPACK_COMPILER_EXTRA_RPATHS',
libfabrics_path)
else:
raise InstallError('compilers_of_client arg required for MPI')