[mpich-discuss] Building MPE for use with OpenMPI

Balaji, Pavan balaji at anl.gov
Mon Nov 30 22:08:17 CST 2015


MPI_Type_struct is not a part of the MPI standard anymore and is replaced by MPI_Type_create_struct.  Both MPICH and Open MPI decided to retain it, but followed different directions for it.  MPICH decided to follow the same convention as MPI_Type_create_struct with the const additions.  Open MPI decided to keep the old prototypes as is.

Unfortunately, MPE got stuck in between the two.  The best approach would be to simply remove those functions from MPE and this problem just goes away.  Would you be able to do that and contribute a patch?

More generally, I think MPICH was overzealous in trying to constify prototypes for the deleted functions.  It should have just left them as they are, like what Open MPI did.  We'll figure out what to do about that internally, but that's not going to be a quick change because of ABI and other such stuff.

Thanks,

  -- Pavan

> On Nov 30, 2015, at 8:14 PM, Schilling, Herbert W. (GRC-VE00) <hschilling at nasa.gov> wrote:
> 
> Hi,
> 
>  I am trying to build MPE for use with OpenMPI. I built from source Version 1.10.1 of OpenMPI. 
> 
>  I am using this version of MPE ftp://ftp.mcs.anl.gov/pub/mpi/mpe/mpe2.tar.gz
> 
>  Should this work fine? I followed the instructions to build like this:
> 
>     ${MPE_SRC_DIR}/configure MPI_CC=${OPENMPI_INSTALL_DIR}/bin/mpicc \
>                             CC=<C_COMPILER_used_to_build_OpenMPI> \
>                             MPI_F77=${OPENMPI_INSTALL_DIR}/bin/mpif77 \
>                             F77=<FORTRAN_COMPILER_used_to_build_OpenMPI> \
>                             --with-java2=/usr/local/j2sdk-1.4.2
>                             --prefix=<MPE_INSTALL_DIR>
>    make
>    make install
> 
> 
> 
> 
> I keep running into problems with conflicting declarations
> 
> 
>  log_mpi_core.c:5611: error: conflicting types for 'MPI_Type_struct'
>  /u/hschilli/local/include/mpi.h:1796: error: previous declaration of 'MPI_Type_struct' was here
> 
> 
> I think the issue is that MPE's declaration uses some const qualifiers while OpenMPI does not.
> 
> 
> 
> I tried hacking my way through this with the macro
> 
> HAVE_CONST_IN_MPI_DECL
>  and MPE_CONST but no luck so far.
> 
> 
> 
> What am I doing wrong?
> 
> 
> Thanks in advance.
> 
> ---------
> Herb Schilling
> Scientific Applications and Visualization Team
> http://ocio.grc.nasa.gov/gvis
> Office of the Chief Information Officer
> NASA Glenn Research Center
> hschilling at nasa.gov
> 
> 
> 
> 
> _______________________________________________
> discuss mailing list     discuss at mpich.org
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/discuss

_______________________________________________
discuss mailing list     discuss at mpich.org
To manage subscription options or unsubscribe:
https://lists.mpich.org/mailman/listinfo/discuss


More information about the discuss mailing list