Yesterday I wanted to launch one of my older programs to generate some matrices. The problem is, it didn't work. I got this error:

./matrixBinaryGenerator: error while loading shared libraries: libmpich.so.10: cannot open shared object file: No such file or directory

I've tried to reinstall mpich, mpich2 and libmpich-dev, but even if all of them have reinstalled succesfully, it didn't solve my problem.

So, I know, that this is a pretty beginners' question, but, do you know how could I install this library? I prefer not to install it manually (from RPM etc.), but from some repository.

My program uses PETSC, my OS is Ubuntu 14.10.

This is the version of my MPI:

HYDRA build details:
    Version:                                 3.1
    Release Date:                            Thu Feb 20 11:41:13 CST 2014
    CC:                              gcc -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro 
    CXX:                             g++ -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro 
    F77:                             gfortran -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wl,-Bsymbolic-functions -Wl,-z,relro 
    F90:                             gfortran -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wl,-Bsymbolic-functions -Wl,-z,relro 
    Configure options:                       '--disable-option-checking' '--prefix=/usr' '--build=x86_64-linux-gnu' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--libexecdir=${prefix}/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--enable-shared' '--enable-fc' '--disable-rpath' '--disable-wrapper-rpath' '--sysconfdir=/etc/mpich' '--libdir=/usr/lib/x86_64-linux-gnu' '--includedir=/usr/include/mpich' '--docdir=/usr/share/doc/mpich' '--with-hwloc-prefix=system' '--enable-checkpointing' '--with-hydra-ckpointlib=blcr' 'build_alias=x86_64-linux-gnu' 'MPICHLIB_CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' 'MPICHLIB_CXXFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' 'MPICHLIB_FFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4' 'MPICHLIB_FCFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -O2' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro ' 'CPPFLAGS=-D_FORTIFY_SOURCE=2 -I/build/buildd/mpich-3.1/src/mpl/include -I/build/buildd/mpich-3.1/src/mpl/include -I/build/buildd/mpich-3.1/src/openpa/src -I/build/buildd/mpich-3.1/src/openpa/src -I/build/buildd/mpich-3.1/src/mpi/romio/include' 'CXXFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' 'F77=gfortran' 'FFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -O2' 'FC=gfortran' 'FCFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -g -O2 -fstack-protector --param=ssp-buffer-size=4' '--cache-file=/dev/null' '--srcdir=.' 'CC=gcc' 'LIBS=-lrt -lcr -lpthread '
    Process Manager:                         pmi
    Launchers available:                     ssh rsh fork slurm ll lsf sge manual persist
    Topology libraries available:            hwloc
    Resource management kernels available:   user slurm ll lsf sge pbs cobalt
    Checkpointing libraries available:       blcr
    Demux engines available:                 poll select

Finally I've found a workaround for this. I found out, that instead of libmpich.so.10 there is libmpich.so.12 on my system. So I created a symlink and it works :-)


ln -s libmpich.so.10 libmpich.so.12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.