[mpich-discuss] cygwin & mingw64 & windows 7 (64bits)

Jayesh Krishna jayesh at mcs.anl.gov
Mon Nov 8 15:00:05 CST 2010


Hi,

>> $ ls /cygdrive/c/lib/ ...

 Did you install MPICH2 in "C:\" ? Why did you change the default installation path (Why didn't you change it so that the directory is something different from "c:\" - eg: "c:\MPICH2")?
 Did you get any errors during the MPICH2 install process (using the windows installers)?

>> Fatal Error: File 'mpi.mod' opened at (1) is not a GFORTRAN module file

 The fortran module file provided with MPICH2 on Windows (binaries installed using windows installer) is only compatible with Intel Fortran Compiler for Windows. 
 

>> in bash, I start smpd ...

 If you install MPICH2 on Windows using the windows installers you shouldn't have to start SMPD manually. The windows installers install SMPD as a service when you install MPICH2.

 Try running the executable at the command prompt without mpiexec (Type "pi3f90" at the command prompt). This should show a better error message (If you are missing any dependencies etc).

Regards,
Jayesh

----- Original Message -----
From: Jean-Michel Beuken <jean-michel.beuken at uclouvain.be>
To: mpich-discuss at mcs.anl.gov
Sent: Mon, 08 Nov 2010 14:46:45 -0600 (CST)
Subject: Re: [mpich-discuss] cygwin & mingw64 & windows 7 (64bits)

Hello Jayesh,

thank you for ypur quick answer...
>   Mingw does not provide the POSIX runtime environment that Nemesis/sock needs. Try compiling your code with gcc (from mingw package) and MPICH2 (64-bit) installed using the windows installers (mpich2-1.3-win-x86-64.msi).
I had installed this package but I'm not a windows specialist

customarily, on linux, the compilation of mpich2 produces some wrappers ( like mpif90 ) and the link is made easily...

after installation of the msi package under Windows , there are :

------------------------------------------------------------------------------
$ ls /cygdrive/c/lib/
TraceInput.lib    cxx.lib  fmpich2.lib  fmpich2g.lib  irlog2rlog.lib  mpe.lib  mpi.lib  rlog.lib

$ ls /cygdrive/c/include/
clog_commset.h    clog_inttypes.h  mpe.h        mpe_logf.h    mpi.h     mpi_base.mod        mpi_sizeofs.mod  mpif.h
clog_const.h    clog_uuid.h     mpe_log.h  mpe_misc.h    mpi.mod  mpi_constants.mod  mpicxx.h         mpio.h
------------------------------------------------------------------------------

tried with the f90 example found in mpich2 : pi3f90.f90

under linux :
------------------------------------------------------------
[root at shiva f90]# mpif90 -show
gfortran -I/usr/local/mpich2_gcc45/include -L/usr/local/mpich2_gcc45/lib -lmpichf90 -lmpich -lopa -lmpl -lrt -lpthread

[root at shiva f90]# echo $LD_LIBRARY_PATH
/usr/local/gcc45/lib64:/usr/local/gcc45/lib:/usr/local/lib:/usr/local/lib64:/usr/local/mpich2_gcc45/lib

[root at shiva f90]# make
../../bin/mpif90  -c pi3f90.f90
../../bin/mpif90   -o pi3f90 pi3f90.o -lrt -lpthread

------------------------------------------------------------

under cygwin  with the MINGW :
------------------------------------------------------------
$ x86_64-w64-mingw32-gfortran.exe -I/cygdrive/c/include/ -c pi3f90.f90
pi3f90.f90:25.8:

  use mpi
         1
Fatal Error: File 'mpi.mod' opened at (1) is not a GFORTRAN module file
------------------------------------------------------------

then, I comment the 'use mpi' and add

include 'mpif.h'   in pi3f90.f90

------------------------------------------------------------
$ x86_64-w64-mingw32-gfortran.exe -I/cygdrive/c/include/ -c pi3f90.f90  -fno-range-check  -fsecond-underscore

$ x86_64-w64-mingw32-gfortran.exe  -o pi3f90 pi3f90.o -L/cygdrive/c/lib -lfmpich2 -lfmpich2g -lmpi -static-libgcc -static-libgfortran

------------------------------------------------------------

I must put "-fno-range-check" because error :

------------------------------------------------------------
mpif.h:340.42:
     Included at pi3f90.f90:26:

        PARAMETER (MPI_FLOAT_INT=2348810240)
                                           1
Error: Integer too big for its kind at (1). This check can be disabled with the option -fno-range-check
------------------------------------------------------------

in bash, I start smpd ( I verify then the service runs )  and start :

/cygdrive/c/bin/mpiexec.exe -n 4 pi3f90

but nothing :-(

with wmpiconfig, I see the exitcode  for the 4 processes = -1073741819

the  mpich2-1.3-win-x86-64.msi  has been compiled  with which compilers ?

regards

jmb







_______________________________________________
mpich-discuss mailing list
mpich-discuss at mcs.anl.gov
https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss



More information about the mpich-discuss mailing list