[MPICH] Can't compile against mpich2 with visual c++ 6

Ian Malone ibm21 at cam.ac.uk
Thu Aug 25 08:07:02 CDT 2005


Yes, it works for me too now without MPICH_SKIP_MPICXX, thanks
for the quick response.  I'm happy to test things if that
results in working code, and I appreciate that this problem is
a symptom of VC 6 being broken.  Unfortunately I don't have
access to VC 2003, but I need to move my code to gcc for our
cluster anyway.

Anyway, thanks for your help.

David Ashton wrote:
> imalone,
> 
> I apologize for using you to test our unreleased code.  We fixed the problem
> and this time I used VC 6 to check that the fix works.  Attached is the new
> mpicxx.h.
> 
> If you don't use C++ you can define MPICH_SKIP_MPICXX and when you do you
> can define HAVE_NO_VARIABLE_RETURN_TYPE_SUPPORT before including mpi.h.
> 
> FYI, VC++ .NET 2003 is able to compile mpicxx.h as is.
> 
> -David Ashton
> 
> -----Original Message-----
> From: owner-mpich-discuss at mcs.anl.gov
> [mailto:owner-mpich-discuss at mcs.anl.gov] On Behalf Of Ian Malone
> Sent: Wednesday, August 24, 2005 6:31 AM
> To: mpich-discuss at mcs.anl.gov
> Subject: Re: [MPICH] Can't compile against mpich2 with visual c++ 6
> 
> Thanks for your help.  I'm now down to 2 errors, 2 warnings, both
> about MPI::Comm::Clone(void) not being defined:
> 
>   C:\PROGRAM FILES\MPICH2\INCLUDE\mpicxx.h(1390) : error C2259: 'Comm' : 
> cannot instantiate abstract class due to following members:
>          C:\PROGRAM FILES\MPICH2\INCLUDE\mpicxx.h(1033) : see 
> declaration of 'Comm'
> C:\PROGRAM FILES\MPICH2\INCLUDE\mpicxx.h(1390) : warning C4259: 'class 
> MPI::Comm &__thiscall MPI::Comm::Clone(void) const' : pure virtual 
> function was not defined
>          C:\PROGRAM FILES\MPICH2\INCLUDE\mpicxx.h(1350) : see 
> declaration of 'Clone'
> C:\PROGRAM FILES\MPICH2\INCLUDE\mpicxx.h(1390) : error C2259: 'Comm' : 
> cannot instantiate abstract class due to following members:
>          C:\PROGRAM FILES\MPICH2\INCLUDE\mpicxx.h(1033) : see 
> declaration of 'Comm'
> C:\PROGRAM FILES\MPICH2\INCLUDE\mpicxx.h(1390) : warning C4259: 'class 
> MPI::Comm &__thiscall MPI::Comm::Clone(void) const' : pure virtual 
> function was not defined
>          C:\PROGRAM FILES\MPICH2\INCLUDE\mpicxx.h(1350) : see 
> declaration of 'Clone'
> 
> (At the compile stage, not linking)
> Which seems a bit tangled.  At the moment I can just use
> #define MPICH_SKIP_MPICXX because I'm using C style bindings,
> but if you want me try anything further I'd be happy to.
> 
> 

-- 
imalone




More information about the mpich-discuss mailing list