Added this change to balay/mpi-dir-check-warning/maint and merged to next. Satish
On Thu, 22 Mar 2018, Satish Balay wrote: > The relevant change that is causing the difference is: > > https://bitbucket.org/petsc/petsc/commits/a98758b74fbc47f3dca87b526141d347301fd5eb > > Perhaps we should print a warning if with-mpi-dir/bin is missing. > > $ ./configure --with-mpi-dir=$HOME/tmp > =============================================================================== > Configuring PETSc to compile on your system > > =============================================================================== > =============================================================================== > > ***** WARNING: /home/balay/tmp/bin dir does not exist! > > Skipping check for MPI compilers due to potentially incorrect --with-mpi-dir > option. Suggest > using --with-cc=/path/to/mpicc option instead ****** > > =============================================================================== > > > Satish > > --------- > > $ git diff > diff --git a/config/BuildSystem/config/setCompilers.py > b/config/BuildSystem/config/setCompilers.py > index 3b4b723e71..1ca92d309a 100644 > --- a/config/BuildSystem/config/setCompilers.py > +++ b/config/BuildSystem/config/setCompilers.py > @@ -515,6 +515,8 @@ class Configure(config.base.Configure): > if self.useMPICompilers() and 'with-mpi-dir' in self.argDB: > # if it gets here these means that self.argDB['with-mpi-dir']/bin does > not exist so we should not search for MPI compilers > # that is we are turning off the self.useMPICompilers() > + self.logPrintBox('***** WARNING: > '+os.path.join(self.argDB['with-mpi-dir'], 'bin')+ ' dir does not exist!\n > Skipping check for MPI compilers due to potentially incorrect --with-mpi-dir > option.\n Suggest using --with-cc=/path/to/mpicc option instead ******') > + > self.argDB['with-mpi-compilers'] = 0 > if self.useMPICompilers(): > self.usedMPICompilers = 1 > > > On Thu, 22 Mar 2018, Satish Balay wrote: > > > In either case > > --mpi-dir=/opt/intel/compilers_and_libraries_2017.1.132/linux/mpi is the > > wrong option. > > > > Its a shortcut for > > --with-cc=/opt/intel/compilers_and_libraries_2017.1.132/linux/mpi/bin/mpicc > > - which you > > don't have. > > > > Since you have mpicc in your path - you can just use: > > > > --with-cc=mpicc [or skip specifying it - and configure will look at your > > path] > > > > Satish > > > > On Thu, 22 Mar 2018, Klaij, Christiaan wrote: > > > > > Matt, > > > > > > The problem must be earlier, because it should be using mpicc for > > > the check, not gcc. The mpi.h is found here by the 3.7.5 config: > > > > > > Executing: mpicc -E -I/tmp/petsc-JIF0WC/config.setCompilers > > > -I/tmp/petsc-JIF0WC/config.types -I/tmp/petsc-JIF0WC/config.headers > > > -I/opt/intel/compilers_and_libraries_2017.1.132/linux/mpi/include > > > -I/opt/intel/compilers_and_libraries_2017.1.132/linux/mpi/intel64/include > > > /tmp/petsc-JIF0WC/config.headers/conftest.c > > > stdout: > > > # 1 "/tmp/petsc-JIF0WC/config.headers/conftest.c" > > > # 1 "/tmp/petsc-JIF0WC/config.headers/confdefs.h" 1 > > > # 2 "/tmp/petsc-JIF0WC/config.headers/conftest.c" 2 > > > # 1 "/tmp/petsc-JIF0WC/config.headers/conffix.h" 1 > > > # 3 "/tmp/petsc-JIF0WC/config.headers/conftest.c" 2 > > > # 1 > > > "/opt/intel/compilers_and_libraries_2017.1.132/linux/mpi/intel64/include/mpi.h" > > > 1 > > > > > > Note that the machine and ENV are exactly the same, the only > > > change is 3.7.5 versus 3.8.3. > > > > > > Chris > > > > > > dr. ir. Christiaan Klaij | Senior Researcher | Research & Development > > > MARIN | T +31 317 49 33 44 | [email protected]<mailto:[email protected]> | > > > www.marin.nl<http://www.marin.nl> > > > > > > [LinkedIn]<https://www.linkedin.com/company/marin> [YouTube] > > > <http://www.youtube.com/marinmultimedia> [Twitter] > > > <https://twitter.com/MARIN_nieuws> [Facebook] > > > <https://www.facebook.com/marin.wageningen> > > > MARIN news: Office tool aNySIM integrated into real-time onboard > > > software<http://www.marin.nl/web/News/News-items/Office-tool-aNySIM-integrated-into-realtime-onboard-software-1.htm> > > > > > > ________________________________ > > > From: Matthew Knepley <[email protected]> > > > Sent: Thursday, March 22, 2018 1:27 PM > > > To: Klaij, Christiaan > > > Cc: [email protected] > > > Subject: Re: [petsc-users] problem configuring 3.8.3 with intel mpi > > > > > > On Thu, Mar 22, 2018 at 8:00 AM, Klaij, Christiaan > > > <[email protected]<mailto:[email protected]>> wrote: > > > Satish, > > > > > > I'm trying to upgrade from 3.7.5 to 3.8.3. The first problem is > > > that my intel mpi installation, which works for 3.7.5, fails with > > > 3.8.3, see the attached logs. It seems that the mpi compilers are > > > not found anymore. Any ideas? > > > > > > The header check failed: > > > > > > Checking include with compiler flags var CPPFLAGS > > > ['/opt/intel/compilers_and_libraries_2017.1.132/linux/mpi/include'] > > > Executing: gcc -E -I/tmp/petsc-8GlPlN/config.setCompilers > > > -I/tmp/petsc-8GlPlN/config.types -I/tmp/petsc-8GlPlN/config.headers > > > -I/opt/intel/compilers_and_libraries_2017.1.132/linux/mpi/include > > > /tmp/petsc-8GlPlN/config.headers/conftest.c > > > stdout: > > > # 1 "/tmp/petsc-8GlPlN/config.headers/conftest.c" > > > # 1 "<built-in>" > > > # 1 "<command-line>" > > > # 1 "/usr/include/stdc-predef.h" 1 3 4 > > > # 1 "<command-line>" 2 > > > # 1 "/tmp/petsc-8GlPlN/config.headers/conftest.c" > > > # 1 "/tmp/petsc-8GlPlN/config.headers/confdefs.h" 1 > > > # 2 "/tmp/petsc-8GlPlN/config.headers/conftest.c" 2 > > > # 1 "/tmp/petsc-8GlPlN/config.headers/conffix.h" 1 > > > # 3 "/tmp/petsc-8GlPlN/config.headers/conftest.c" 2 > > > Possible ERROR while running preprocessor: exit code 256 > > > stdout: > > > # 1 "/tmp/petsc-8GlPlN/config.headers/conftest.c" > > > # 1 "<built-in>" > > > # 1 "<command-line>" > > > # 1 "/usr/include/stdc-predef.h" 1 3 4 > > > # 1 "<command-line>" 2 > > > # 1 "/tmp/petsc-8GlPlN/config.headers/conftest.c" > > > # 1 "/tmp/petsc-8GlPlN/config.headers/confdefs.h" 1 > > > # 2 "/tmp/petsc-8GlPlN/config.headers/conftest.c" 2 > > > # 1 "/tmp/petsc-8GlPlN/config.headers/conffix.h" 1 > > > # 3 "/tmp/petsc-8GlPlN/config.headers/conftest.c" 2stderr: > > > /tmp/petsc-8GlPlN/config.headers/conftest.c:3:17: fatal error: mpi.h: No > > > such file or directory > > > #include <mpi.h> > > > ^ > > > compilation terminated. > > > Source: > > > #include "confdefs.h" > > > #include "conffix.h" > > > #include <mpi.h> > > > Preprocess stderr before > > > filtering:/tmp/petsc-8GlPlN/config.headers/conftest.c:3:17: fatal error: > > > mpi.h: No such file or directory > > > #include <mpi.h> > > > > > > Where are the headers? > > > > > > Thanks, > > > > > > Matt > > > > > > Chris > > > > > > > > > dr. ir. Christiaan Klaij | Senior Researcher | Research & Development > > > MARIN | T +31 317 49 33 44 | > > > mailto:[email protected]<mailto:[email protected]> | http://www.marin.nl > > > > > > MARIN news: > > > http://www.marin.nl/web/News/News-items/Office-tool-aNySIM-integrated-into-realtime-onboard-software-1.htm > > > > > > > > > > > > > > > -- > > > 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.caam.rice.edu/~mk51/> > > > > > > > > > > > > > > >
