Hi, This is a note to point out that as of the latest uploads (mpich 3.3b2-2, openmpi-3.0.1-6), both openmpi and mpich are now multi-arch enabled.
I've been testing this in experimental releases for a while and discussing in bug reports, but its worth documenting fully now. Basically: lib$(MPI)-dev now provides: /usr/lib/$(ARCH)/$(MPI_VARIANT)/{include,lib} so it is possible to point mpiroot = /usr/lib/$(ARCH)/$(MPI_VARIANT) and it works. (ARCH=DEB_HOST_MULTIARCH triplet, VARIANT for mpich or openmpi -- lam doesn't work), The actual libraries (/usr/lib/libmpich.so*, etc) are in /usr/lib/$(ARCH) with symlinks. pkg-config files are also provided, in /usr/lib/$(ARCH)/pkgconfig. What is NOT provided in lib$(MPI)-dev anymore is mpicc.* These have been moved to openmpi-bin, mpich respectively. This is because they cannot be provided in a multi-arch sane manner. But it is possible for multi-arch builds to work using just pkg-config e.g. gfortran hello-mpi.f90 `pkg-config mpi-fort --libs` `pkg-config mpi-fort --cflags` To make this work required some updates of the update-alternatives. There are now three sets of update-alternatives: mpi-$(ARCH), for mpi.h, etc links: providing them in /usr/include/$(ARCH)/mpi. Used in libopenmpi-dev, libmpich-dev. mpi , for mpicc, mpifort, etc and manpages. Not multi-arch aware. Used in openmpi-bin, mpich. mpiexec , for mpiexec, mpirun, in openmpi-bin and mpich, as before. Regards Alastair -- Alastair McKinstry, <alast...@sceal.ie>, <mckins...@debian.org>, https://diaspora.sceal.ie/u/amckinstry Misentropy: doubting that the Universe is becoming more disordered.