PETSC for CodeAster13.4

I tried to build petsc ( v3.7.7) for CodeAster 13.4 parallel. This is just a record of the work.

To make petsc library, a command line was put as follows:

./config/configure.py --with-openmpi-dir=/usr/lib/openmpi --with-blas-lapack-lib=[/opt/OpenBLAS/lib/libopenblas.a] --download-hypre=yes --download-ml=yes --with-debugging=0 COPTFLAGS=-O1 CXXOPTFLAGS=-O1 FOPTFLAGS=-O1 --configModules=PETSc.Configure --optionsModule=PETSc.compilerOptions --with-x=0 --with-shared-libraries=0 --with-scalapack-dir=/opt/scalapack --PETSC_ARCH=linux-metis-mumps --with-metis-dir=/opt/metis-5.1.0 --with-parmetis-dir=/opt/parmetis-4.0.3 --with-scotch-dir=/opt/scotch-6.0.4 --with-ptscotch-dir=/opt/scotch-6.0.4 --with-mumps-lib="-L/opt/mumps-5.1.1-mpi20180814/lib -lzmumps -ldmumps -lmumps_common -lpord -L/opt/scotch-6.0.4/lib -lesmumps -lscotch -lscotcherr -lscotcherrexit -L/opt/metis-5.1.0/lib -lmetis" --with-mumps-include=/opt/mumps-5.1.1-mpi20180814/include --download-mumps=1 LIBS=-lgomp

I checked Configure.log , options were

  • –with-metis-dir : work
  • –with-parmetis-dir:work
  • –with-scotch-dir:work
  • –with-mumps-lib : Not work (Why?)

I referred an article (https://www.code-aster.org/forum2/viewtopic.php?id=23440)  and modified  option order as follows:

./config/configure.py --with-mumps-dir=/opt/mumps-5.1.1-mpi20180814 --with-openmpi-dir=/usr/lib/openmpi --with-blas-lapack-lib=[/opt/OpenBLAS/lib/libopenblas.a] --download-hypre=yes --download-ml=yes --with-debugging=0 COPTFLAGS=-O1 CXXOPTFLAGS=-O1 FOPTFLAGS=-O1 --with-x=0 --with-shared-libraries=0 --with-scalapack-dir=/opt/scalapack --PETSC_ARCH=linux-metis-mumps --with-metis-dir=/opt/metis-5.1.0 --with-parmetis-dir=/opt/parmetis-4.0.3 --with-scotch-dir=/opt/scotch-6.0.4 --with-ptscotch-dir=/opt/scotch-6.0.4 LIBS=-lgomp --configModules=PETSc.Configure --optionsModule=PETSc.compilerOptions

Finally,  the configure was finished! I thank members of code aster.

I found another problems.

  • When “–with-64-bit-indicies” and “–download-mumps” set for configure, a error message was sent. Why mumps can’t build with 64bit integer?
  • Petsc 3.8.4 (and 3.8.2) doesn’t include “petscxxxdef.h”. Waf doesn’t build CodeAster13.4.