Hi Bob,
On 20 Mar 2019, at 11:28, Cregan, Bob <b.cregan@imperial.ac.uk> wrote:
Hi We've been experiencing a problem with the firedrake build using intel compilers/Intel MPI on the Imperial clusters.
We have a workaround: see attached. However it would be nice if the build was fixed. The workaround basically builds petsc separately so that we can put a couple of symlinks into the petsc/include dir. They are links to mpi.h and mpio.h. If we don't do that then PyOP2 fails to find the headers in the intel mpi environment. The includes are set in the mpi module but seem to be lost when it comes to building PyOP2.
Hmm, so firedrake-install just builds with whatever mpicc/mpif90 it finds: you can control this by saying firedrake-install --mpicc your-mpicc --mpicxx ... Do you happen to have a log from a build that failed? (I note that it seems like madness that one has to set the I_MPI_CC environment variable to point to the include directory for the MPI headers: surely the compiler wrapper mpicc should arrange for that to happen) Also, if you use --honour-petsc-dir then the PETSC_CONFIGURE_OPTIONS line is ignored (firedrake-install doesn't build PETSc in this case). Cheers, Lawrence