At Matt alluded to - its a circular dependency - hence the error. i.e DMPlexSNESComputeJacobianFEM() is a SNES function - so it can't be called from DM sources [src/dm/impls/plex/landau/plexland.c]
The dependency order is: -lpetsctao -lpetscts -lpetscsnes -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetscsys Satish On Mon, 13 Jul 2020, Mark Adams wrote: > I did add #include <petscts.h> to petscdmplex.h. THat is all that I can see > that could cause trouble. > > On Mon, Jul 13, 2020 at 4:11 PM Mark Adams <[email protected]> wrote: > > > THis error was in this one also, plus warnings: > > > > https://gitlab.com/petsc/petsc/-/jobs/636537354 > > > > "/export/home/glci/builds/zxfiRCGf/0/petsc/petsc/include/petsc/private/sectionimpl.h", > > line 21: warning: operands have incompatible types: > > struct {pointer to long long perm, pointer to long long invPerm} ":" > > const struct {pointer to long long perm, pointer to long long invPerm} > > "/export/home/glci/builds/zxfiRCGf/0/petsc/petsc/include/petsc/private/sectionimpl.h", > > line 21: warning: operands have incompatible types: > > struct {pointer to long long perm, pointer to long long invPerm} ":" > > const struct {pointer to long long perm, pointer to long long invPerm} > > "/export/home/glci/builds/zxfiRCGf/0/petsc/petsc/include/petsc/private/petscfeimpl.h", > > line 19: warning: linker scope was specified more than once: "PETSCFE_SetUp" > > > > On Mon, Jul 13, 2020 at 4:08 PM Mark Adams <[email protected]> wrote: > > > >> > >> On Mon, Jul 13, 2020 at 4:01 PM Matthew Knepley <[email protected]> > >> wrote: > >> > >>> Do these have -single-library ? > >>> > >> > >> This was in a single configuration, but it also happened in this one: > >> > >> /scratch/svcpetsc/glci-builds/qanz_veh/0/petsc/petsc/arch-ci-linux-pkgs-cxx-mlib/lib/libpetscdm.so: > >> undefined reference to `TSGetDM' > >> /scratch/svcpetsc/glci-builds/qanz_veh/0/petsc/petsc/arch-ci-linux-pkgs-cxx-mlib/lib/libpetscdm.so: > >> undefined reference to `DMPlexSNESComputeJacobianFEM' > >> collect2: error: ld returned 1 exit status > >> gmakefile.test:185: recipe for target > >> 'arch-ci-linux-pkgs-cxx-mlib/tests/mat/tests/ex96' failed > >> make[2]: *** [arch-ci-linux-pkgs-cxx-mlib/tests/mat/tests/ex96] Error 1 > >> make[2]: *** Waiting for unfinished jobs.... > >> /scratch/svcpetsc/glci-builds/qanz_veh/0/petsc/petsc/lib/petsc/conf/test.common:26: > >> recipe for target 'allgtest-tap' failed > >> make[1]: *** [allgtest-tap] Error 2 > >> GNUmakefile:17: recipe for target 'allgtests-tap' failed > >> make: *** [allgtests-tap] Error 2 > >> Running after_script > >> > >> > >>> > >>> Thanks, > >>> > >>> Matt > >>> > >>> On Mon, Jul 13, 2020 at 3:51 PM Mark Adams <[email protected]> wrote: > >>> > >>>> I am getting this error on two pipeline tests. They don't seem to have > >>>> anything to do with my branch. I have gotten these several times today. > >>>> > >>>> /home/petsc/builds/KFnbdjNX/0/petsc/petsc/arch-ci-linux-cuda-single-cxx/lib/libpetscdm.so: > >>>> undefined reference to `DMPlexSNESComputeJacobianFEM' > >>>> /home/petsc/builds/KFnbdjNX/0/petsc/petsc/arch-ci-linux-cuda-single-cxx/lib/libpetscdm.so: > >>>> undefined reference to `TSGetDM' > >>>> collect2: error: ld returned 1 exit status > >>>> make[2]: *** [arch-ci-linux-cuda-single-cxx/tests/mat/tests/ex240] > >>>> Error 1 > >>>> make[2]: *** Waiting for unfinished jobs.... > >>>> gmakefile.test:185: recipe for target > >>>> 'arch-ci-linux-cuda-single-cxx/tests/mat/tests/ex240' failed > >>>> make[1]: *** [allgtest-tap] Error 2 > >>>> /home/petsc/builds/KFnbdjNX/0/petsc/petsc/lib/petsc/conf/test.common:26: > >>>> recipe for target 'allgtest-tap' failed > >>>> GNUmakefile:17: recipe for target 'allgtests-tap' failed > >>>> make: *** [allgtests-tap] Error 2 > >>>> > >>> > >>> > >>> -- > >>> What most experimenters take for granted before they begin their > >>> experiments is infinitely more interesting than any results to which their > >>> experiments lead. > >>> -- Norbert Wiener > >>> > >>> https://www.cse.buffalo.edu/~knepley/ > >>> <http://www.cse.buffalo.edu/~knepley/> > >>> > >> >
