Matt, The make that comes with Apple is ancient; I use a much more recent gnumake I compiled from source (probably brew's make is fine too).
> On Nov 23, 2021, at 1:30 PM, Matthew Knepley <[email protected]> wrote: > > On Tue, Nov 23, 2021 at 12:56 PM Matthew Knepley <[email protected] > <mailto:[email protected]>> wrote: > On Tue, Nov 23, 2021 at 12:29 PM Satish Balay <[email protected] > <mailto:[email protected]>> wrote: > The primary difference I can spot [as you say] is the older xcode you have. > Eventhough it says the same version of flex - perhaps its buggy? > > Apple clang version 11.0.3 (clang-1103.0.32.59) > vs > Apple clang version 12.0.0 (clang-1200.0.32.2) > > > > PATH=/PETSc3/cig/bin:/PETSc3/petsc/petsc-pylith/arch-pylith-debug/bin:/PETSc3/petsc/apple/bin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/texbin:/opt/X11/bin:/usr/local/git/bin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/opt/local/bin:/opt/local/sbin:/usr/X11/bin:/usr/local/texlive/2019/bin/x86_64-darwin:/usr/local/cuda/bin:/usr/local/gmt/bin:/usr/local/bin:/usr/X11/bin:/usr/local/texlive/2019/bin/x86_64-darwin:/usr/local/cuda/bin:/usr/local/gmt/bin > > BTW: Can you try a build with the following and see if it makes a difference? > > PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin ./configure > PETSC_ARCH=arch-test --with-mpi-dir=/PETSc3/petsc/apple --download-c2html > --download-ptscotch > > Damn damn damn damn. Now I have to bisect the PATH to see how in the world > that can make a difference. > > Okay, the configure succeeds by taking out /opt/local/bin:/opt/local/sbin, > but I cannot figure out why this would be the case? > > knepley/feature-plex-multiple-hybrid *$:/PETSc3/petsc/petsc-pylith$ ls > /opt/local/sbin/ > knepley/feature-plex-multiple-hybrid *$:/PETSc3/petsc/petsc-pylith$ ls > /opt/local/bin/ > a2p envsubst libnetcfg-5.12 > perlivp-5.8 prove > a2p-5.12 find2perl libnetcfg-5.8 > perlthanks prove-5.12 > a2p-5.8 find2perl-5.12 msgattrib > perlthanks-5.12 prove-5.8 > autoconf263 find2perl-5.8 msgcat > perlthanks-5.8 psed > > autoheader263 gettext msgcmp > piconv psed-5.12 > autom4te263 gettext.sh msgcomm > piconv-5.12 psed-5.8 > autopoint gettextize msgconv > piconv-5.8 pstruct > autoreconf263 ghc msgen pl2pm > pstruct-5.12 > autoscan263 ghc-6.10.4 msgexec > pl2pm-5.12 pstruct-5.8 > autoupdate263 ghc-pkg msgfilter > pl2pm-5.8 ptar-5.12 > c2ph ghc-pkg-6.10.4 msgfmt > pod2html ptardiff-5.12 > c2ph-5.12 ghci msggrep > pod2html-5.12 recode-sr-latin > c2ph-5.8 ghci-6.10.4 msginit > pod2html-5.8 reset > c_rehash gm4 msgmerge > pod2latex runghc > captoinfo gperf msgunfmt > pod2latex-5.12 runhaskell > clear h2ph msguniq > pod2latex-5.8 s2p > config_data-5.12 h2ph-5.12 ncurses5-config > pod2man s2p-5.12 > corelist-5.12 h2ph-5.8 ncursesw5-config > pod2man-5.12 s2p-5.8 > corelist-5.8 h2xs ngettext > pod2man-5.8 shasum-5.12 > cpan h2xs-5.12 openssl > pod2text splain > cpan-5.12 h2xs-5.8 perl > pod2text-5.12 splain-5.12 > cpan-5.8 haddock perl5 > pod2text-5.8 splain-5.8 > cpan2dist hasktags perl5.12 > pod2usage tabs > cpan2dist-5.12 help2man perl5.12.3 > pod2usage-5.12 tic > cpanp hp2ps perl5.8 > pod2usage-5.8 toe > cpanp-5.12 hpc perl5.8.9 > podchecker tput > cpanp-run-perl hsc2hs perlbug > podchecker-5.12 tset > cpanp-run-perl-5.12 iconv perlbug-5.12 > podchecker-5.8 wget > daemondo idn perlbug-5.8 > podselect xgettext > dprofpp ifnames263 perlcc-5.8 > podselect-5.12 xmlwf > dprofpp-5.12 infocmp perldoc > podselect-5.8 xsubpp > dprofpp-5.8 infotocap perldoc-5.12 port > xsubpp-5.12 > enc2xs instmodsh-5.12 perldoc-5.8 portf > xsubpp-5.8 > enc2xs-5.12 instmodsh-5.8 perlivp > portindex > enc2xs-5.8 libnetcfg perlivp-5.12 > portmirror > > Thanks, > > Matt > > Thanks, > > Matt > > Satish > > > On Tue, 23 Nov 2021, Matthew Knepley wrote: > > > Here it is. > > > > Matt > > > > On Tue, Nov 23, 2021 at 11:44 AM Satish Balay <[email protected] > > <mailto:[email protected]>> wrote: > > > > > On Tue, 23 Nov 2021, Matthew Knepley wrote: > > > > > > > On Tue, Nov 23, 2021 at 11:28 AM Satish Balay <[email protected] > > > > <mailto:[email protected]>> wrote: > > > > > > > > > Well we don't have this issue on our (macos) CI boxes where both > > > > > c2html > > > > > and scotch build and run daily [in CI] > > > > > > > > > > what 'flex' are you using? And why does it behave differently on your > > > box? > > > > > > > > > > > > > main *$:/PETSc3/petsc/petsc-dev$ which flex > > > > /usr/bin/flex > > > > main *$:/PETSc3/petsc/petsc-dev$ flex --version > > > > flex 2.5.35 Apple(flex-32) > > > > > > > > > > > > > And what errors do you get? > > > > > > > > > > > > > Without the extra input define in PTScotch.py, I get the yylval symbol > > > > undefined and the lexer symbol. When I give > > > > that define as input, only the lexer symbol is undefined. > > > > > > BTW: Can you send the log? > > > > > > Satish > > > > > > > > > > > > > > > > Perhaps CI is using older xcode (command line tools) - and you are > > > using > > > > > newer? Or something else? > > > > > > > > > > > > > Probably the other way around. I am on Catalina 10.15.6 > > > > > > > > Matt > > > > > > > > > > > > > Barry - do you have this issue on your machine? > > > > > > > > > > balay@ypro ~ % which flex > > > > > /usr/bin/flex > > > > > balay@ypro ~ % /usr/bin/flex --version > > > > > flex 2.5.35 Apple(flex-32) > > > > > balay@ypro petsc % clang -v > > > > > Apple clang version 12.0.0 (clang-1200.0.32.2) > > > > > Target: x86_64-apple-darwin19.6.0 > > > > > Thread model: posix > > > > > InstalledDir: /Library/Developer/CommandLineTools/usr/bin > > > > > balay@ypro ~ % balay@ypro petsc % ./configure > > > > > --with-mpi-dir=$HOME/mpich-3.4.2 --download-c2html --download-ptscotch > > > > > > > > > > <log attached> > > > > > > > > > > > > > > > Satish > > > > > > > > > > On Tue, 23 Nov 2021, Matthew Knepley wrote: > > > > > > > > > > > This is the same flex problem as I had for c2html, but I was more > > > > > > determined tracking it down this time. The first problem is that we > > > were > > > > > > not renaming in the parser, > > > > > > > > > > > > main *$:/PETSc3/petsc/petsc-dev$ git diff > > > > > > diff --git a/config/BuildSystem/config/packages/PTScotch.py > > > > > > b/config/BuildSystem/config/packages/PTScotch.py > > > > > > index d1c277b6e9f..e046804c17f 100644 > > > > > > --- a/config/BuildSystem/config/packages/PTScotch.py > > > > > > +++ b/config/BuildSystem/config/packages/PTScotch.py > > > > > > @@ -70,7 +70,7 @@ class Configure(config.package.Package): > > > > > > if self.libraries.add('-lrt','timer_create'): ldflags += ' > > > > > > -lrt' > > > > > > self.cflags = self.cflags + ' -DCOMMON_RANDOM_FIXED_SEED' > > > > > > # do not use -DSCOTCH_PTHREAD because requires MPI built for > > > > > threads. > > > > > > - self.cflags = self.cflags + ' -DSCOTCH_RENAME > > > > > > -Drestrict="'+self.compilers.cRestrict+'"' > > > > > > + self.cflags = self.cflags + ' -DSCOTCH_RENAME > > > -DSCOTCH_RENAME_PARSER > > > > > > -Drestrict="'+self.compilers.cRestrict+'"' > > > > > > # this is needed on the Mac, because common2.c includes > > > > > > common.h > > > > > which > > > > > > DOES NOT include mpi.h because > > > > > > # SCOTCH_PTSCOTCH is NOT defined above Mac does not know what > > > > > > clock_gettime() is! > > > > > > if self.setCompilers.isDarwin(self.log): > > > > > > > > > > > > Second, they were not treating this case completely correctly: > > > > > > > > > > > > > > > > > > > > (93454e8...):/PETSc3/petsc/petsc-dev/arch-master-debug/externalpackages/git.ptscotch/src/libscotch$ > > > > > > git diff HEAD~1 > > > > > > diff --git a/src/libscotch/parser_yy.h b/src/libscotch/parser_yy.h > > > > > > index 931315d..95b8160 100644 > > > > > > --- a/src/libscotch/parser_yy.h > > > > > > +++ b/src/libscotch/parser_yy.h > > > > > > @@ -62,6 +62,9 @@ > > > > > > > > > > > > #if ((defined SCOTCH_RENAME_PARSER) || (defined yylex)) /* If > > > > > > prefix > > > > > > renaming */ > > > > > > #define scotchyyparse stratParserParse2 /* Parser > > > function > > > > > > name */ > > > > > > +#if !defined(yylex) > > > > > > +#define yylex scotchyylex > > > > > > +#endif > > > > > > #ifndef yylval > > > > > > #define yylval SCOTCH_NAME_MACRO3 (scotchyy, > > > > > > SCOTCH_NAME_SUFFIXC, lval) /* It should be Yacc/Bison's job to > > > redefine > > > > > it! > > > > > > */ > > > > > > #endif /* yylval */ > > > > > > > > > > > > How should we go about getting this fix in? Do you need to have our > > > own > > > > > > branch of PTScotch? > > > > > > > > > > > > Thanks, > > > > > > > > > > > > Matt > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > 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/> > > > -- > 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/>
