I'm on 16.04. When I
sudo apt-get install mpich
and check the lib directory
/usr/lib/mpich
it contains the include dir as expected, but the lib directory within it:
/usr/lib/mpich/lib
is a symbolic link to:
/usr/lib/x86_64-linux-gnu
So as far as I can tell, there are no lib files and I can't compile code because it doesn't find the mpich libraries.
/usr/lib/mpich$ readlink -f lib
Returns:
/usr/lib/x86_64-linux-gnu
Here are the compilation and link commands:
ifort -warn none -O2 -I/usr/include/mpich/ -c boundary.F90 -o boundary.o
ifort -o boundary.o -lmpi
and the error is:
boundary.F90:(.text+0xaa): undefined reference to `mpi_sendrecv_'
and the link directory is
/usr/include/mpich/lib
mpich
is not installed correctly, but that you are failing to link the necessary library for the function in question (which appears to belibmpichfort
i.e. you need to add-lmpichfort
to your link command)