[mpich2-dev] build issues with MPE on Windows(32) and MinGW

jayesh at mcs.anl.gov jayesh at mcs.anl.gov
Mon Nov 2 15:41:35 CST 2009


Hi,
 Each MPICH2 release on windows is independent of each other (You shouldn't have to install a version of MPICH2 before installing another). Let us know the problem you faced and we can sort it out.
 Which library did you use to compile/link your code (Please provide us with the path/name of the libraries)? Is your code written in C/python/C++/fortran ? Please provide us more details regarding your program.

(PS: You should be able to do stuff similar to dlopen() with LoadLibrary() on windows...)

-Jayesh

----- Original Message -----
From: "Lisandro Dalcin" <dalcinl at gmail.com>
To: mpich2-dev at mcs.anl.gov
Cc: "Jayesh Krishna" <jayesh at mcs.anl.gov>
Sent: Monday, November 2, 2009 3:20:50 PM GMT -06:00 US/Canada Central
Subject: Re: [mpich2-dev] build issues with MPE on Windows(32) and MinGW

On Mon, Nov 2, 2009 at 5:35 PM,  <jayesh at mcs.anl.gov> wrote:
> Hi,

Sorry for taking so long to get back... I have little Windows
experience, and your mail REALLY confused me. I had to start from
scratch and uninstall DeinoMPI, MPICH2 and MS HPC Cluster Pack from my
Windows system to make sure I was not being bitten by the infamous
"DLL Hell" :-) ... In the process, I've discovered that for upgrading
MPICH2, fist I have to uninstall the previous version :-( (BTW, is
this right?)... But I think I was able to get things cleaned-up and
then re-installed latest MPICH2-1.2 using the MSI installer.

>
>  We currently don't provide a mingw compatible library for MPE on windows.
>

What that means? This is the part that confused me...

I've just built a Python extension module linked against MPE...
because of the way my code works and Windows limitations (no
equivalent to dlopen() with RTLD_GLOBAL, AFAIK), I cannot log MPI
calls, but the logging of user-defined event and states is definitely
working (to be honest, just a sequential try, no mpiexec involved).

So I think you are wrong... MPE (at least some parts) do work with
MinGW on Windows(32) ... Why did you said that this is not supported??

>
> Why are you using the MPE header files provided with MPICH2 on windows with mingw?
>

Because I want my code (i.e, mpi4py) to work with MinGW. No more, no
less... And part of MPE (I mean, at least the logging of user-defined
states and events) DO WORK with MinGW after using the fix commented in
my previous mail (I mean, #include stdint.h and inttypes.h)

>
> (PS: The CLOG types are defined using pre-defined windows types. There is no need to include <stdint.h> or <inttypes.h> on windows.)
>

But if you want to use MinGW, it seems you have to include these two
headers to make GCC "understand" these pre-defined windows types.


PS: Am I being clear enough?


> Regards,
> Jayesh
> ----- Original Message -----
> From: "Lisandro Dalcin" <dalcinl at gmail.com>
> To: mpich2-dev at mcs.anl.gov
> Sent: Monday, November 2, 2009 1:02:46 PM GMT -06:00 US/Canada Central
> Subject: [mpich2-dev] build issues with MPE on Windows(32) and MinGW
>
> Anthony, this is unrelated to our previous discussions about -fPIC, so
> I'm reporting the issue here. I hope it is the right place. If not,
> let me know (perhaps mpich-discuss ??).
>
> This diff at Google Code will be clear enough, I think:
>
> http://code.google.com/p/mpi4py/source/diff?spec=svn522&r=522&format=side&path=/trunk/src/MPE/mpe-log.c
>
> Without these two headers included, my Python ext module fails bad to
> build with MinGW. Interestingly, "clog_inttypes.h" has these two
> includes commented out on Windows (using the binary installer here).
> So perhaps protecting the inclusion of these two headers as shown in
> the link above will do the trick? To put it clear, I'm talking about
> using this:
>
>   #if defined(_WIN32) && defined(__GNUC__)
>     #include <stdint.h>
>     #include <inttypes.h>
>   #endif
>
>
> --
> Lisandro Dalcín
> ---------------
> Centro Internacional de Métodos Computacionales en Ingeniería (CIMEC)
> Instituto de Desarrollo Tecnológico para la Industria Química (INTEC)
> Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET)
> PTLC - Güemes 3450, (3000) Santa Fe, Argentina
> Tel/Fax: +54-(0)342-451.1594
>



-- 
Lisandro Dalcín
---------------
Centro Internacional de Métodos Computacionales en Ingeniería (CIMEC)
Instituto de Desarrollo Tecnológico para la Industria Química (INTEC)
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET)
PTLC - Güemes 3450, (3000) Santa Fe, Argentina
Tel/Fax: +54-(0)342-451.1594


More information about the mpich2-dev mailing list