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/>
> > > 
> > > 
> > > 
> > 
> > 
> 
> 

Reply via email to