Bug#1079566: petsc 3.21 fails to run build-time-tests

Drew Parsons dparsons at debian.org
Sat Aug 24 17:16:08 BST 2024


Source: petsc
Version: 3.21.4+dfsg1-1exp1
Severity: normal
Control: forwarded -1 https://gitlab.com/petsc/petsc/-/issues/1634

petsc 3.21 is failing to successfully run build-time tests
(with build dir identified by PETSC_ARCH at build time).

The check_build rule invokes testex19 in src/snes/tutorials,
which gets

/usr/bin/gmake --no-print-directory PETSC_ARCH=x86_64-linux-gnu-real-debug PETSC_DIR=/projects/petsc/build/petsc ex19 > trashz 2>&1
gmake: [/projects/petsc/build/petsc/lib/petsc/conf/rules:49: ex19.PETSc] Error 2 (ignored)
*******************Error detected during compile or link!*******************
See https://petsc.org/release/faq/
/projects/petsc/build/petsc/src/snes/tutorials ex19
*********************************************************************************
gmake[1]: Entering directory '/projects/petsc/build/petsc/src/snes/tutorials'
mpicc -Wl,-z,relro -fPIC  -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/projects/petsc/build/petsc=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fPIC  -I/projects/petsc/build/petsc/include -I/projects/petsc/build/petsc/x86_64-linux-gnu-real-debug/include -I/usr/include/hypre -I/usr/include/suitesparse -I/usr/include/superlu -I/usr/include/superlu-dist -I/usr/include/trilinos -I/usr/include/scotch -I/usr/include/hdf5/openmpi  -Wdate-time -D_FORTIFY_SOURCE=2   -Wl,-export-dynamic ex19.c  -L/usr/lib/petscdir/petsc3.21/x86_64-linux-gnu-real-debug/lib -L/usr/lib/x86_64-linux-gnu/hdf5/openmpi -L/usr/lib/x86_64-linux-gnu/openmpi/lib -L/usr/lib/x86_64-linux-gnu/openmpi/lib/fortran/gfortran -L/usr/lib/gcc/x86_64-linux-gnu/14 -lpetsc_real -lHYPRE -lspqr -lumfpack -lamd -lcholmod -lklu -ldmumps -lzmumps -lsmumps -lcmumps -lmumps_common -lpord -lscalapack-openmpi -lsuperlu -lsuperlu_dist -ltrilinos_ml -lfftw3 -lfftw3_mpi -llapack -lblas -ltrilinos_zoltan -lptesmumps -lptscotch -lptscotcherr -lhdf5 -lmpi -lm -lOpenCL -lyaml -lX11 -lmpi_usempif08 -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi -lopen-rte -lopen-pal -lhwloc -levent_core -levent_pthreads -lgfortran -lm -lz -lgfortran -lm -lgfortran -lgcc_s -lquadmath -lstdc++ -o ex19
/usr/bin/ld: /tmp/ccuRH6Pr.o: in function `NonlinearGS':
./src/snes/tutorials/./src/snes/tutorials/ex19.c:392:(.text+0x26): undefined reference to `petscstack'

The petscstack reference is not the error, it's just a symptom that
the libpetsc.so library in
/projects/petsc/build/petsc/x86_64-linux-gnu-real-debug/lib is not
being accessed.

We can see in the compile line that it's using the newly prepared
include files
-I/projects/petsc/build/petsc/x86_64-linux-gnu-real-debug/include,
which is what we want here.
But for the lib dir,
-L/usr/lib/petscdir/petsc3.21/x86_64-linux-gnu-real-debug/lib is being
used instead of
-L/projects/petsc/build/petsc/x86_64-linux-gnu-real-debug/lib.
Hence the error (the library is not yet installed in
/usr/lib/petscdir/petsc3.21/x86_64-linux-gnu-real-debug/lib).

This seems to be a regression in petsc 3.21. Build-time tests
previously passed for petsc 3.20.



More information about the debian-science-maintainers mailing list