[petsc-dev] install petsc on windows 10 with mpi

Satish Balay balay at mcs.anl.gov
Mon Feb 6 16:28:09 CST 2017


>>>>

Configure Options: --configModules=PETSc.Configure --optionsModule=config.compilerOptions --with-cc="win32fe cl" --with-fc="win32fe ifort" --with-cxx="win32fe cl" --with-mpi-include="[/cygdrive/c/PROGRA~2/MICROS~4/MPI/Include,/cygdrive/c/PROGRA~2/MICROS~4/MPI/Include/x64]" --with-mpi-lib="[/cygdrive/c/PROGRA~2/MICROS~4/MPI/Lib/x64/msmpi.lib,/cygdrive/c/PROGRA~2/MICROS~4/MPI/Lib/x64/msmpifec.lib]" --with-fftw-dir="[/cygdrive/c/cygwin64/home/fftw]" --with-hdf5-dir="[/cygdrive/c/cygwin64/home/hdf5]" --download-fblaslapack=1 --with-c2html=0 --with-debugging=0 --with-ssl=0 --with-x=0 PETSC_ARCH= PETSC_DIR=/home/petsc-3.6.4
<<<<

> 'PETSC_ARCH='

Can you rerun with a non-empty PETSC_ARCH string - or let configure choost default..

> --with-fftw-dir="[/cygdrive/c/cygwin64/home/fftw]" --with-hdf5-dir="[/cygdrive/c/cygwin64/home/hdf5]" 

I don't think I've built these packages with MS compilers
before. Somehow they are not picked up anyway. For one - the format
here should be the following [but I don't know if that will make
configure check for them]:

--with-fftw-dir=/cygdrive/c/cygwin64/home/fftw --with-hdf5-dir=/cygdrive/c/cygwin64/home/hdf5

> PETSC_DIR=/home/petsc-3.6.4

Also - please use latest petsc-3.7 release.

> C:\cygwin64\home\PETSC-~1.4\include\petscsys.h(122) : fatal error C1189: #error :  "PETSc was configured with MPICH but
> now appears to be compiling using a non-MPICH mpi.h"

Hm - configure is picking up Intel-MPI from your 'INCLUDE' env
variable - but not 'make' - not sure whats hapenning - but I think its
best to start a clean build with petsc-3.7 [unless you need 3.6 for a
specific need]

Satish

On Mon, 6 Feb 2017, Mohammad S Dodaran wrote:

> hello
> 
> 
> i configured petsc and i was trying to make then this error appeared
> 
> 
> Using mpiexec: mpiexec
> ==========================================
> Building PETSc using GNU Make with 4 build threads
> ==========================================
> make[2]: Entering directory '/home/petsc-3.6.4'
> /usr/bin/python ./config/gmakegen.py --petsc-arch=../petsc-3.6.4
> Use "/usr/bin/make V=1" to see the verbose compile lines.
>           CC ../petsc-3.6.4/obj/src/sys/info/verboseinfo.o
>           CC ../petsc-3.6.4/obj/src/sys/info/ftn-auto/verboseinfof.o
>           CC ../petsc-3.6.4/obj/src/sys/info/ftn-custom/zverboseinfof.o
>           CC ../petsc-3.6.4/obj/src/sys/ftn-custom/zsys.o
> verboseinfo.c
> C:\cygwin64\home\PETSC-~1.4\include\petscsys.h(122) : fatal error C1189: #error :  "PETSc was configured with MPICH but
> now appears to be compiling using a non-MPICH mpi.h"
> make[2]: *** [gmakefile:161: ../petsc-3.6.4/obj/src/sys/info/verboseinfo.o] Error 2
> make[2]: *** Waiting for unfinished jobs....
> verboseinfof.c
> C:\cygwin64\home\PETSC-~1.4\include\petscsys.h(122) : fatal error C1189: #error :  "PETSc was configured with MPICH but
> now appears to be compiling using a non-MPICH mpi.h"
> make[2]: *** [gmakefile:161: ../petsc-3.6.4/obj/src/sys/info/ftn-auto/verboseinfof.o] Error 2
> zverboseinfof.c
> C:\cygwin64\home\PETSC-~1.4\include\petscsys.h(122) : fatal error C1189: #error :  "PETSc was configured with MPICH but
> now appears to be compiling using a non-MPICH mpi.h"
> make[2]: *** [gmakefile:161: ../petsc-3.6.4/obj/src/sys/info/ftn-custom/zverboseinfof.o] Error 2
> zsys.c
> C:\cygwin64\home\PETSC-~1.4\include\petscsys.h(122) : fatal error C1189: #error :  "PETSc was configured with MPICH but
> now appears to be compiling using a non-MPICH mpi.h"
> make[2]: *** [gmakefile:161: ../petsc-3.6.4/obj/src/sys/ftn-custom/zsys.o] Error 2
> make[2]: Leaving directory '/home/petsc-3.6.4'
> make[1]: *** [/home/petsc-3.6.4/lib/petsc/conf/rules:107: gnumake] Error 2
> make[1]: Leaving directory '/home/petsc-3.6.4'
> **************************ERROR*************************************
>   Error during compile, check ../petsc-3.6.4/lib/petsc/conf/make.log
>   Send it and ../petsc-3.6.4/lib/petsc/conf/configure.log to petsc-maint at mcs.anl.gov
> ********************************************************************
> make: *** [makefile:30: all] Error 1
> 
> i have also attached the configure.log and make.log
> 
> regards
> Mohammad
> 
> 
> 
> ________________________________
> From: Matthew Knepley <knepley at gmail.com>
> Sent: Monday, February 6, 2017 8:07:41 AM
> To: Mohammad S Dodaran
> Cc: petsc-dev
> Subject: Re: [petsc-dev] install petsc on windows 10 with mpi
> 
> On Sun, Feb 5, 2017 at 11:26 PM, Mohammad S Dodaran <mdodar1 at lsu.edu<mailto:mdodar1 at lsu.edu>> wrote:
> 
> Satish,
> 
> Thanks for your quick response. as you see I can ls to the directory:
> 
>  ls /cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ SDKs/MPI/Include/
> 
> Yes, but as Satish said, there are spaces in the path above. We do not allow spaces in the path.
> You cannot give a path to configure with spaces.
> 
> You can remove the spaces using the cygpath command that Satish showed. Please use that command.
> Remove the spaces from this path and give the spaceless path to configure.
> 
>   Thanks,
> 
>      Matt
> 
> mpi.f90   mpi.h     mpif.h    mpio.h    mspms.h   pmidbg.h  x64/      x86/
> 
> 
> 
> but I do not know why still it has the same problem. and my configure file looks strange.
> 
> Best,
> 
> Mohammad
> 
> ________________________________
> From: Satish Balay <balay at mcs.anl.gov<mailto:balay at mcs.anl.gov>>
> Sent: Sunday, February 5, 2017 10:58:35 PM
> To: Mohammad S Dodaran
> Cc: petsc-dev at mcs.anl.gov<mailto:petsc-dev at mcs.anl.gov>
> Subject: Re: [petsc-dev] install petsc on windows 10 with mpi
> 
> Try to figureout path without spaces.
> 
> cygpath -u `cygpath -s -m PATH`
> 
> Make sure you can do "ls" on this path.
> 
> And use it with petsc configure.
> 
> balay at ps4 ~
> $ cygpath -u `cygpath -s -m /cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ SDKs/MPI/Include`
> /cygdrive/c/PROGRA~2/MICROS~2/MPI/Include
> 
> balay at ps4 ~
> $ ls /cygdrive/c/PROGRA~2/MICROS~2/MPI/Include
> mpi.f90  mpi.h  mpif.h  mpio.h  mspms.h  pmidbg.h  x64  x86
> 
> balay at ps4 ~
> $
> 
> For ex: - I use:
> 
> >>>>>>>>
> $ cat config/examples/arch-mswin-intel.py
> #!/usr/bin/python
> if __name__ == '__main__':
>   import sys
>   import os
>   sys.path.insert(0, os.path.abspath('config'))
>   import configure
>   configure_options = [
>     '--download-fblaslapack=1',
>     '--with-cc=win32fe icl',
>     '--with-cxx=win32fe icl',
>     '--with-fc=win32fe ifort',
>     '--with-mpi-include=[/cygdrive/c/PROGRA~2/MICROS~2/MPI/Include/,/cygdrive/c/PROGRA~2/MICROS~2/MPI/Include/x64]',
>     '--with-mpi-lib=[/cygdrive/c/PROGRA~2/MICROS~2/MPI/lib/x64/msmpifec.lib,/cygdrive/c/PROGRA~2/MICROS~2/MPI/lib/x64/msmpi.lib]',
>     '--with-mpiexec=/cygdrive/c/PROGRA~1/MICROS~2/Bin/mpiexec',
>     '--with-shared-libraries=0',
>     'DATAFILESPATH=c:/cygwin64/home/petsc/datafiles',
>   ]
>   configure.petsc_configure(configure_options)
> 
> <<<<<<<<<<<
> 
> if you still have issues - send us configure.log for the failure.
> 
> Satish
> 
> On Sun, 5 Feb 2017, Mohammad S Dodaran wrote:
> 
> > Dear Petsc developers,
> >
> > I am trying to install Petsc on windows 10 but I have a problem. I installed  MS-MPI v8<http://go.microsoft.com/FWLink/p/?LinkID=389556> separately and in the configure options I use
> >
> > --with-mpi-include="/cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ SDKs/MPI/Include" --with-mpi-lib="/cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ SDKs/MPI/Lib/x64/msmpi.lib"
> >
> >
> > But it gives error which says:
> >
> > ***************************************************************
> >                 ERROR in COMMAND LINE ARGUMENT to ./configure
> > -------------------------------------------------------------------------------
> > Invalid directory: [/cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ SDKs/MPI/Include for key with-mpi-include
> >
> >
> > How should I solve it?
> >
> > Mohammad
> >
> 
> 
> 
> 
> --
> 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
> 




More information about the petsc-dev mailing list