Hi 
      See attached - not sure what build options were used for that particular one had to get from backup.

Setting the compiler works for all the various sub-builds - it was just PyOP2 that could not find the mpi header files. 

Bob


Bob Cregan
HPC Systems Analyst

Information & Communication Technologies

Imperial College London, 
South Kensington Campus London, SW7 2AZ
T: 07712388129
E: b.cregan@imperial.ac.uk

W: www.imperial.ac.uk/ict/rcs

1505984389175_twitter.png @imperialRCS @imperialRSE

1505983882959_Imperial-RCS.png



From: Lawrence Mitchell <wence@gmx.li>
Sent: 20 March 2019 11:36
To: Cregan, Bob
Cc: firedrake; Lacalle Puig, Santiago
Subject: Re: [firedrake] Build issue on Imperial clusters/Intel CC
 
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