Looking to compile
OpenMPI 4.1.1
under Centos 7.9, (with Mellanox OFED 5.3 stack)
with the nVidia HPC-SDK, version 21.7.
Configure works, build fails.
The nvidia HPC-SDK is using their environmental module which sets these
variables, etc.
setenv NVHPC /stage/opt/NV_hpc_sdk
setenv CC /stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/bin/nvc
setenv CXX /stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/bin/nvc++
setenv FC
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/bin/nvfortran
setenv F90
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/bin/nvfortran
setenv F77
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/bin/nvfortran
setenv CPP cpp
prepend-path PATH /stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/cuda/bin
prepend-path PATH /stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/bin
prepend-path PATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/extras/qd/bin
prepend-path LD_LIBRARY_PATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/cuda/lib64
prepend-path LD_LIBRARY_PATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/cuda/extras/CUPTI/lib64
prepend-path LD_LIBRARY_PATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/extras/qd/lib
prepend-path LD_LIBRARY_PATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/lib
prepend-path LD_LIBRARY_PATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/math_libs/lib64
prepend-path LD_LIBRARY_PATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/comm_libs/nccl/lib
prepend-path LD_LIBRARY_PATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/comm_libs/nvshmem/lib
prepend-path CPATH /stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/math_libs/include
prepend-path CPATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/comm_libs/nccl/include
prepend-path CPATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/comm_libs/nvshmem/include
prepend-path CPATH
/stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/extras/qd/include/qd
prepend-path MANPATH /stage/opt/NV_hpc_sdk/Linux_x86_64/21.7/compilers/man
-------------------------------------------------------------------
configure --prefix=/stage/opt/OpenMPI/ROME/4.1.1/NV-HPC/21.7 CC=nvc CXX=nvc++
FC=nvfortran
...
FCLD libmpi_usempif08.la
/usr/bin/ld: .libs/comm_spawn_multiple_f08.o: relocation R_X86_64_32S against `.rodata' can not be
used when making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/startall_f08.o: relocation R_X86_64_32S against `.rodata' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/testall_f08.o: relocation R_X86_64_32S against `.rodata' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/testany_f08.o: relocation R_X86_64_32S against `.rodata' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/testsome_f08.o: relocation R_X86_64_32S against `.rodata' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/type_create_struct_f08.o: relocation R_X86_64_32S against `.rodata' can not be
used when making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/type_get_contents_f08.o: relocation R_X86_64_32S against `.rodata' can not be
used when making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/waitall_f08.o: relocation R_X86_64_32S against `.rodata' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/waitany_f08.o: relocation R_X86_64_32S against `.rodata' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/waitsome_f08.o: relocation R_X86_64_32S against `.rodata' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/pcomm_spawn_multiple_f08.o: relocation R_X86_64_32S against `.rodata' can
not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/pstartall_f08.o: relocation R_X86_64_32S against `.rodata' can not be
used when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/ptestall_f08.o: relocation R_X86_64_32S against `.rodata' can not be used
when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/ptestany_f08.o: relocation R_X86_64_32S against `.rodata' can not be used
when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/ptestsome_f08.o: relocation R_X86_64_32S against `.rodata' can not be
used when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/ptype_create_struct_f08.o: relocation R_X86_64_32S against `.rodata' can
not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/ptype_get_contents_f08.o: relocation R_X86_64_32S against `.rodata' can
not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/pwaitall_f08.o: relocation R_X86_64_32S against `.rodata' can not be used
when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/pwaitany_f08.o: relocation R_X86_64_32S against `.rodata' can not be used
when making a shared object; recompile with -fPIC
/usr/bin/ld: profile/.libs/pwaitsome_f08.o: relocation R_X86_64_32S against `.rodata' can not be
used when making a shared object; recompile with -fPIC
/usr/bin/ld: .libs/abort_f08.o: relocation R_X86_64_PC32 against symbol `ompi_abort_f' can not be
used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
make[2]: *** [libmpi_usempif08.la] Error 2
make[2]: Leaving directory
`/project/muno/OpenMPI/BUILD/4.1.1/ROME/NV-HPC/21.7/ompi/mpi/fortran/use-mpi-f08'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/project/muno/OpenMPI/BUILD/4.1.1/ROME/NV-HPC/21.7/ompi'
make: *** [all-recursive] Error 1
--
Ray Muno
IT Systems Administrator
e-mail: m...@umn.edu
University of Minnesota
Aerospace Engineering and Mechanics