I am compiling openmpi-3.1.2 on CentOS 7 with GCC 7.3 installed in /opt/GCC7. My setup is "debug" as I had some trouble with MPI lib. When I run a ldd command on libmpi_usempi.so it shows that it load libgfortran.so.4 (from GCC 7.3) but also libgfortran.so.3 (from system GCC 4.8.5) and there is a conflict message when linking MPI applications.
I do not know how to remove this dependancie on libgfortran.so.3.

Thanks for your advices

Patrick

$ldd /opt/openmpi-GCC73/3.1.2/lib/libmpi_usempi.so
    linux-vdso.so.1 =>  (0x00007fffd9b33000)
    libmpi_mpifh.so.40 => /opt/openmpi-GCC73/3.1.2/lib/libmpi_mpifh.so.40 (0x00007f3efb75f000)
    libmpi.so.40 => /opt/openmpi-GCC73/3.1.2/lib/libmpi.so.40 
(0x00007f3efb1d9000)
    libopen-rte.so.40 => /opt/openmpi-GCC73/3.1.2/lib/libopen-rte.so.40 (0x00007f3efadf6000)     libopen-pal.so.40 => /opt/openmpi-GCC73/3.1.2/lib/libopen-pal.so.40 (0x00007f3efa8d4000)
    libnuma.so.1 => /lib64/libnuma.so.1 (0x00007f3efa6c8000)
    libudev.so.1 => /lib64/libudev.so.1 (0x00007f3efa4b2000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f3efa2ae000)
    librt.so.1 => /lib64/librt.so.1 (0x00007f3efa0a6000)
    libutil.so.1 => /lib64/libutil.so.1 (0x00007f3ef9ea3000)
    libz.so.1 => /lib64/libz.so.1 (0x00007f3ef9c8d000)
*libgfortran.so.3*=> /lib64/libgfortran.so.3 (0x00007f3ef996b000) <<== system GCC 4.8.5
    libm.so.6 => /lib64/libm.so.6 (0x00007f3ef9669000)
    libquadmath.so.0 => /opt/GCC73/lib64/libquadmath.so.0 (0x00007f3ef942a000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f3ef905d000)
    libgcc_s.so.1 => /opt/GCC73/lib64/libgcc_s.so.1 (0x00007f3ef8e46000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f3ef8c2a000)
*libgfortran.so.4*=> /opt/GCC73/lib/../lib64/libgfortran.so.4 (0x00007f3ef8858000) <<== /opt GCC 7.3.0
    /lib64/ld-linux-x86-64.so.2 (0x00007f3efbbbe000)
    libcap.so.2 => /lib64/libcap.so.2 (0x00007f3ef8653000)
    libdw.so.1 => /lib64/libdw.so.1 (0x00007f3ef840c000)
    libattr.so.1 => /lib64/libattr.so.1 (0x00007f3ef8207000)
    libelf.so.1 => /lib64/libelf.so.1 (0x00007f3ef7fef000)
    liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f3ef7dc9000)
    libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f3ef7bb9000)

I've run several configurations for building OpenMPI, below is the last one which fails too.

module load Compilers-GCC73
export BASE=/opt
export MPIVERS=3.1.2
export DESTMPI=$BASE/openmpi-GCC73/$MPIVERS
tar xvfz openmpi-$MPIVERS.tar.gz
cd openmpi-$MPIVERS
mkdir build
cd build/
CC=$(which gcc) CXX=$(which g++) FC=$(which gfortran) LDFLAGS="-L/opt/GCC73/lib64 -L/opt/GCC73/lib" \
../configure --prefix=$DESTMPI --enable-mpirun-prefix-by-default 
--disable-dlopen \
--enable-mca-no-build=openib --without-verbs --enable-mpi-cxx --enable-debug --enable-mem-debug --without-slurm
make -j 8
make check
make install

Gfortran is in the PATH and LD_LIBRARY_PATH is set when module is loaded.
$which gfortran
/opt/GCC73/bin/gfortran
$echo $LD_LIBRARY_PATH
/opt/GCC73/lib64:/opt/GCC73/lib

Building a basic fortran application with gfortran 7.3.0 do no show any reference to libgfortran.so.3:
$ldd a.out
    linux-vdso.so.1 =>  (0x00007fff620e8000)
*libgfortran.so.4* => /opt/GCC73/lib64/libgfortran.so.4 (0x00007f5e7b573000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f5e7b271000)
    libgcc_s.so.1 => /opt/GCC73/lib64/libgcc_s.so.1 (0x00007f5e7b05a000)
    libquadmath.so.0 => /opt/GCC73/lib64/libquadmath.so.0 (0x00007f5e7ae1b000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f5e7aa4e000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f5e7b945000)

--
===================================================================
|  Equipe M.O.S.T.         |                                      |
|  Patrick BEGOU           | mailto:patrick.be...@grenoble-inp.fr |
|  LEGI                    |                                      |
|  BP 53 X                 | Tel 04 76 82 51 35                   |
|  38041 GRENOBLE CEDEX    | Fax 04 76 82 52 71                   |
===================================================================

_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Reply via email to