[firedrake] Locally installed FFC not found on ARCHER

Lawrence Mitchell lawrence.mitchell at imperial.ac.uk
Fri Jan 30 14:10:32 GMT 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 30/01/15 13:59, Eike Mueller wrote:
> Hi,
> 
> I'm having problems with my local PETSc (which I rebuild) now. When
> I compile code I get:
> 
> eike at eslogin002 $ mpicc -std=c99 -fPIC -Wall -g -O3
> -fno-tree-vectorize 
> -I/work/n02/n02/eike/git_workspace/petsc/cray-gnu-shared/include 
> -I/work/n02/n02/eike/git_workspace/petsc/include 
> -I/work/n02/n02/eike/git_workspace/PyOP2/pyop2 -mavx -o 
> /work/n02/n02/eike//pyop2-cache/d3a8b4069edd657dc6695d0d9e9e260c.so.tmp
>
> 
/work/n02/n02/eike//pyop2-cache/d3a8b4069edd657dc6695d0d9e9e260c.c
> -shared -L/work/n02/n02/eike/git_workspace/petsc/lib 
> -L/work/n02/n02/eike/git_workspace/petsc/cray-gnu-shared/lib 
> -Wl,-rpath,/work/n02/n02/eike/git_workspace/petsc/lib 
> -Wl,-rpath,/work/n02/n02/eike/git_workspace/petsc/cray-gnu-shared/lib
>
> 
- -lpetsc -lmIn file included from
> /work/n02/n02/eike/git_workspace/petsc/include/petscis.h:7:0, from 
> /work/n02/n02/eike/git_workspace/petsc/include/petscvec.h:9, from 
> /work/n02/n02/eike/git_workspace/petsc/include/petscmat.h:6, from 
> /work/n02/n02/eike/git_workspace/PyOP2/pyop2/mat_utils.h:4, from 
> /work/n02/n02/eike//pyop2-cache/d3a8b4069edd657dc6695d0d9e9e260c.c:2:
>
> 
/work/n02/n02/eike/git_workspace/petsc/include/petscsys.h:122:6: error:
> #error "PETSc was configured with MPICH but now appears to be
> compiling using a non-MPICH mpi.h" #    error "PETSc was configured
> with MPICH but now appears to be compiling using a non-MPICH
> mpi.h" ^
> 
> I have the same issue on the login node and when running through a 
> firedrake batch job. Could it be the mpi.h file in
> 

PETSc bakes in, *at configure time* the MPI it was configured with.
Then at compile time it checks that this matches what it now sees.

I think the problem here is that you're using "mpicc" as the compiler
rather than "cc" with the result that you're getting the wrong MPI.

You need to do something like:

CC=cc
export CC
CXX=CC
export CXX

in your run script so that PyOP2 uses the right compiler.

Lawrence

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAEBAgAGBQJUy5DNAAoJECOc1kQ8PEYvK6MH/jmjYJhwye+6I+Qsmym5kj+/
jZ9YwqwC2o5YA+Pp0oL3hb57TjA61Ev4Vjv+RhIwwR6IOTMWuYuqXsJ9YkkLuB4V
1DDf/XFMwMHMRdHeOp3pG5DU/d7GEafARsh2cLD3YsWEHeMc+7seHneFGgoirw7e
v7BqyPLpkDeR9UatGqpMFhjdKVqzY+oNJ9JngRZGjlx+/2cVwsZVGvjfNdHugg/q
WsZ4FnPdMNMzpsHUoJ6DwsRheAL8V9d/zg2dafXug5xX8ZvwGVYveH9t2a0FxOpW
Aux9j9wJE2akQgVg0VAZS9fd16HlkspoVgWr4yeXtnOU41xCyuTet7AEoKg8Hxs=
=Xec7
-----END PGP SIGNATURE-----



More information about the firedrake mailing list