Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] errors returned from openmpi-1.2.7 source code
From: Shafagh Jafer (barfy27_at_[hidden])
Date: 2008-09-17 15:04:55


ok but the problme is that I have another type of mpi from Scali, and when I put in my make file "mpicc" and "mpic++" it goes and uses the Scali MPI's compilers which have exactly the same names "mpicc and mpic++"...So It did not give me any error, but i felt that it used the Scali stuff and not the openmpi's. So i modified my Makefile as follows:
==============================================================
export CPP=/opt/openmpi/1.2.7/bin/mpic++ #/usr/local/bin/g++
export CC=/opt/openmpi/1.2.7/bin/mpicc #/usr/local/bin/gcc
export AR=ar
export YACPP=yacc

#export DEFINES_CPP += -DNEWCOORDIN
#===========================================================================
#PCD++ Directory Details

#jacky: change the following line to reflect your pcd code directory //:~

export MAINDIR=/nfs/sjafer/phd/openMPI/openmpi_cd++_timewarp
export INCLUDES_CPP +=-I$(MAINDIR)/include

#If running parallel simulation, uncomment the following lines
export DEFINES_CPP += -DMPI
#export LIBMPI = -lmpi

#===========================================================================

#===========================================================================
#MPI Directory Details
##export MPIDIR=/opt/openmpi/1.2.7/
##export LDFLAGS +=-L$(MPIDIR)/lib
##export INCLUDES_CPP += -I$(MPIDIR)/include

###export LDFLAGS+=-L. -L$/opt/openmpi/1.2.7/lib

==============================================================
and i am still getting the follwoing errors :
opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/comm.h: At top level:
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/comm.h:84: parse error before `protected'
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/comm.h:96: base class `Comm_Null' has incomplete type
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/comm.h: In method `Comm::Comm(const Comm &)':
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/comm.h:153: `class Comm' has no member named `mpi_comm'
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/comm.h:153: type `Comm_Null' is not an immediate basetype for `Comm'
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/comm.h: In method `Comm::Comm(ompi_communicator_t *)':
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/comm.h:155: type `Comm_Null' is not an immediate basetype for `Comm'
In file included from /opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/mpicxx.h:199,
                 from /opt/openmpi/1.2.7/include/mpi.h:1795,
                 from stdaload.cpp:33:
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/win.h: At top level:
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/win.h:27: parse error before `::'
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/win.h:28: parse error before `::'
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/win.h:93: `static' can only be specified for objects and functions
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/win.h:93: ANSI C++ forbids declaration `' with no type
/opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/win.h:93: confused by earlier errors, bailing outmake: *** [stdaload.o] Error 1

--- On Wed, 9/17/08, Jeff Squyres <jsquyres_at_[hidden]> wrote:
From: Jeff Squyres <jsquyres_at_[hidden]>
Subject: Re: [OMPI users] errors returned from openmpi-1.2.7 source code
To: "Open MPI Users" <users_at_[hidden]>
Date: Wednesday, September 17, 2008, 11:21 AM

You shouldn't need to add any -I's or -L's or -l's for Open MPI.
 Just
use mpic++ and mpicc (per my first note, notice that "mpicc" (lower
case) is the C compiler -- mpiCC is a synonym for the C++ compiler --
this could be your problem). Those wrappers add all the compiler /
linker flags that you need.

On Sep 17, 2008, at 2:16 PM, Shafagh Jafer wrote:

> The openmpi is installed in the following path: /opt/openmpi/1.2.7
> so should i replce what you told me about /usr/lib with /opt/openmpi/
> 1.2.7 ??
>
> --- On Wed, 9/17/08, Jeff Squyres <jsquyres_at_[hidden]> wrote:
> From: Jeff Squyres <jsquyres_at_[hidden]>
> Subject: Re: [OMPI users] errors returned from openmpi-1.2.7 source
> code
> To: "Open MPI Users" <users_at_[hidden]>
> Date: Wednesday, September 17, 2008, 9:22 AM
>
> I don't quite understand the format of this file, but at first glance,
> you shouldn't need the following lines:
>
> export LIBMPI = -lmpi
>
> export MPIDIR=/nfs/sjafer/phd/openMPI/installed
> export LDFLAGS +=-L$(MPIDIR)/lib
> export INCLUDES_CPP += -I$(MPIDIR)/include
>
> It also doesn't seem like the last 2 arguments of this line are a good
> idea (the linker should automatically put /usr/lib and /lib in your
> search path, if appropriate):
>
> export LDFLAGS+=-L. -L$/usr/lib -L$/lib
>
> I also notice:
>
> export CPP=mpic++
> export CC=mpiCC
>
> I think you want "mpicc" for CC (note the lower case) -- mpiCC
is the
> C
> ++ compiler (mpic++ and mpiCC are synonyms).
>
> This might solve your problem.
>
>
>
> On Sep 15, 2008, at 4:56 PM, Shafagh Jafer wrote:
>
> > i am sending you my simulator's Makefile.common which points to
> > openmpi, please take a look at it. Thanks a lot.
> >
> > --- On Mon, 9/15/08, Jeff Squyres <jsquyres_at_[hidden]> wrote:
> > From: Jeff Squyres <jsquyres_at_[hidden]>
> > Subject: Re: [OMPI users] errors returned from openmpi-1.2.7 source
> > code
> > To: "Open MPI Users" <users_at_[hidden]>
> > Date: Monday, September 15, 2008, 11:21 AM
> >
> > On Sep 14, 2008, at 1:24 PM, Shafagh Jafer wrote:
> >
> > > I installed openmpi-1.2.7 and tested the hello_c and ring_c
> examples
> > > on single and multiple node and worked fine. However, when I use
> > > openmpi with my simulator (by replacing the old mpich path with

> the
> > > new openmpi ) I get many errors reported from "/openMPI/
> > > openmpi-1.2.7/include/openmpi/ompi/mpi/cxx/*.h" . Please
see the
> > > following snap shots:
> > >
> >
> > It's not clear exactly what you did here. Did you just replace
> > MPICH's "mpiCC" with OMPI's "mpiCC"?
FWIW,
> this is
> > almost always the
> > easiest way to compile MPI applications: use that
implementation's
> > "wrapper" compiler (I'm assuming you have a C++ code in
this
> > case).
> >
> > These errors should not normally happen; they look kinda like
you're
> > somehow inadvertently mixing Open MPI and MPICH.
> >
> > --
> > Jeff Squyres
> > Cisco Systems
> >
> > _______________________________________________
> > users mailing list
> > users_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/users
> >
> >
<Makefile.common>_______________________________________________
> > users mailing list
> > users_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>
> --
> Jeff Squyres
> Cisco Systems
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users

-- 
Jeff Squyres
Cisco Systems
_______________________________________________
users mailing list
users_at_[hidden]
http://www.open-mpi.org/mailman/listinfo.cgi/users