[petsc-dev] fix conflict between triangle and spai
Satish Balay
balay at mcs.anl.gov
Thu Apr 30 10:19:08 CDT 2020
On Tue, 28 Apr 2020, Jed Brown wrote:
> Satish Balay via petsc-dev <petsc-dev at mcs.anl.gov> writes:
>
> > I get the following error with triangle+spai build with gcc-10 [this is on linux though - ignore osx in PETSC_ARCH]
> >
> > CLINKER arch-ci-osx-cxx-pkgs-opt/lib/libpetsc.so.3.13.0
> > /usr/bin/ld: /home/balay/petsc/arch-ci-osx-cxx-pkgs-opt/lib/libtriangle.a(triangle.o):/home/balay/petsc/arch-ci-osx-cxx-pkgs-opt/externalpackages/Triangle/src/triangle.c:667: multiple definition of `epsilon'; /home/balay/petsc/arch-ci-osx-cxx-pkgs-opt/lib/libspai.a(spai.o):(.bss+0x188): first defined here
> >
> >
> > Matt,
> >
> > Any objection to this change to triangle?
> >
> > diff --git a/src/triangle.c b/src/triangle.c
> > index 8e915a1..76f6d84 100644
> > --- a/src/triangle.c
> > +++ b/src/triangle.c
> > @@ -664,7 +664,7 @@ long samples; /* Number of random samples for point location. */
> > unsigned long randomseed; /* Current random number seed. */
> >
> > REAL splitter; /* Used to split REAL factors for exact multiplication. */
> > -REAL epsilon; /* Floating-point machine epsilon. */
> > +static REAL epsilon; /* Floating-point machine epsilon. */
> > REAL resulterrbound;
> > REAL ccwerrboundA, ccwerrboundB, ccwerrboundC;
> > REAL iccerrboundA, iccerrboundB, iccerrboundC;
>
> Can you make the rest of these static while you're at it?
Ok - pushed.
Satish
More information about the petsc-dev
mailing list