Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] Can OpenMPI be compiled with Visual Studio 2010?
From: Kelly Thompson (kgt_at_[hidden])
Date: 2010-07-26 10:39:49


Hi George,

I have the source for 1.3.3 checked out. The CMake step completes without
reporting any errors or failures, but the compile under Visual Studio 2010
fails with various bad things:

This looks like a problem with CMake. Either the config file was not
generated correctly or the CMake files aren't looking in the correct
locations...

1>ClCompile:
1> win32.c
1>..\..\opal\event\WIN32-Code\win32.c(28): fatal error C1083: Cannot open
include file: 'opal_config.h': No such file or directory
1> event.c
1>..\..\opal\event\event.c(28): fatal error C1083: Cannot open include file:
'opal_config.h': No such file or directory
1> evutil.c
1>..\..\opal\event\evutil.c(27): fatal error C1083: Cannot open include
file: 'opal_config.h': No such file or directory
1> log.c
1>..\..\opal\event\log.c(40): fatal error C1083: Cannot open include file:
'opal_config.h': No such file or directory
1> select.c
1>..\..\opal\event\select.c(29): fatal error C1083: Cannot open include
file: 'opal_config.h': No such file or directory
1> signal.c
1>..\..\opal\event\signal.c(29): fatal error C1083: Cannot open include
file: 'opal_config.h': No such file or directory
1> compat

I think the stdint.h file included with Visual Studio 2010 is different than
the one provided with 2008. I am seeing thousands of warnings like this:

2>ClCompile:
2> orted_comm.c
4>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(73): warning C4005: 'INT16_MIN' : macro
redefinition
4> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(169) : see previous
definition of 'INT16_MIN'
4>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(74): warning C4005: 'INT32_MIN' : macro
redefinition
4> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(160) : see previous
definition of 'INT32_MIN'
4>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(77): warning C4005: 'INT16_MAX' : macro
redefinition
4> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(172) : see previous
definition of 'INT16_MAX'
3>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(73): warning C4005: 'INT16_MIN' : macro
redefinition
3> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(169) : see previous
definition of 'INT16_MIN'
3>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(74): warning C4005: 'INT32_MIN' : macro
redefinition
3> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(160) : see previous
definition of 'INT32_MIN'
3>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(77): warning C4005: 'INT16_MAX' : macro
redefinition
3> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(172) : see previous
definition of 'INT16_MAX'
2>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(73): warning C4005: 'INT16_MIN' : macro
redefinition
2> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(169) : see previous
definition of 'INT16_MIN'
2>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(74): warning C4005: 'INT32_MIN' : macro
redefinition
2> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(160) : see previous
definition of 'INT32_MIN'
2>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(77): warning C4005: 'INT16_MAX' : macro
redefinition
2> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(172) : see previous
definition of 'INT16_MAX'
2>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(78): warning C4005: 'INT32_MAX' : macro
redefinition
2> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(157) : see previous
definition of 'INT32_MAX'
2>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(79): warning C4005: 'UINT8_MAX' : macro
redefinition
2> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(175) : see previous
definition of 'UINT8_MAX'
2>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(80): warning C4005: 'UINT16_MAX' : macro
redefinition
2> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(166) : see previous
definition of 'UINT16_MAX'
2>C:\Program Files (x86)\Microsoft Visual Studio
10.0\VC\include\stdint.h(81): warning C4005: 'UINT32_MAX' : macro
redefinition
2> C:\a\openmpi-1.3.3\opal/win32/win_compat.h(151) : see previous
definition of 'UINT32_MAX'

Any thoughts?

-kt

> -----Original Message-----
> From: George Bosilca [mailto:bosilca_at_[hidden]]
> Sent: Friday, July 23, 2010 10:55 AM
> To: kgt_at_[hidden]; Open MPI Developers
> Subject: Re: [OMPI devel] Can OpenMPI be compiled with Visual Studio 2010?
>
> Kelly,
>
> Windows is still a target platform for Open MPI which is supposed to build
> nicely with all versions of Visual Studio. Personally I didn't test the
2010
> version, but if you provide us with the compilation output file we might
be
> able to help.
>
> Thanks,
> george.
>
> On Jul 23, 2010, at 12:40 , Kelly Thompson wrote:
>
> > Hi,
> >
> > I would like to know if anyone is trying to build Open-MPI under Visual
> Studio 2010? I see that 1.3.3 was built under VS 2008, but I would like
to
> build under the 2010 version and have been unsuccessful so far.
> >
> > Can someone tell me if MSVC continues to be a target platform? Is there
a
> wiki or other collaborative development site that deals with compiling
> OpenMPI for the Windows platform?
> >
> > Thanks!
> >
> > -kt
> >
> > _______________________________________________
> > devel mailing list
> > devel_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/devel