Open MPI logo

Open MPI User's Mailing List Archives

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

Subject: Re: [OMPI users] where is mpif.h ?
From: Shafagh Jafer (barfy27_at_[hidden])
Date: 2008-09-24 00:15:50


Ok now after i have made sure that my code acutally goes and includes the mpi.h from openmpi and not mpich, now I get really wierd errors. Below I will paste my mpic++ configurations from --showme and the errors i gert from running my code.
====================
[sjafer_at_DeepThought latest_cd++_timewarp]$ /opt/openmpi/1.2.7/bin/mpic++ --showme:compile
-I/opt/openmpi/1.2.7/include -pthread
====================
[sjafer_at_DeepThought latest_cd++_timewarp]$ /opt/openmpi/1.2.7/bin/mpic++ --showme:link
-pthread -L/opt/openmpi/1.2.7/lib -lmpi_cxx -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl
====================
 
 
=====ERRORS===========
In file included from /usr/local/include/g++-3/stl_tree.h:57,
                 from /usr/local/include/g++-3/map:31,
                 from /opt/openmpi/1.2.7/include/openmpi/ompi/mpi/cxx/mpicxx.h:35,
                 from /opt/openmpi/1.2.7/include/mpi.h:1795,
                 from CommPhyMPI.cc:36:
/usr/local/include/g++-3/stl_alloc.h: At top level:
/usr/local/include/g++-3/stl_alloc.h:142: template with C linkage
/usr/local/include/g++-3/stl_alloc.h:224: template with C linkage
/usr/local/include/g++-3/stl_alloc.h:243: template with C linkage
/usr/local/include/g++-3/stl_alloc.h:320: template with C linkage
/usr/local/include/g++-3/stl_alloc.h:729: template with C linkage
/usr/local/include/g++-3/stl_alloc.h:740: template with C linkage
/usr/local/include/g++-3/stl_alloc.h:746: template with C linkage
/usr/local/include/g++-3/stl_alloc.h: In method `allocator<_Tp>::allocator(const allocator<_Tp1> &)':
/usr/local/include/g++-3/stl_alloc.h:746: template with C linkage
/usr/local/include/g++-3/stl_alloc.h: At top level:
/usr/local/include/g++-3/stl_alloc.h:778: template with C linkage
/usr/local/include/g++-3/stl_alloc.h: In function `bool operator ==(const allocator<_Tp1> &, const allocator<_T2> &)':
/usr/local/include/g++-3/stl_alloc.h:786: template with C linkage
/usr/local/include/g++-3/stl_alloc.h: In function `bool operator !=(const allocator<_Tp1> &, const allocator<_T2> &)':
/usr/local/include/g++-3/stl_alloc.h:792: template with C linkage
/usr/local/include/g++-3/stl_alloc.h: At top level:
/usr/local/include/g++-3/stl_alloc.h:804: template with C linkage
/usr/local/include/g++-3/stl_alloc.h:815: template with C linkage
/usr/local/include/g++-3/stl_alloc.h:824: template with C linkage
/usr/local/include/g++-3/stl_alloc.h: In method `__allocator<_Tp,_Alloc>::__allocator(const __allocator<_Tp1,_Alloc> &)':
/usr/local/include/g++-3/stl_alloc.h:824: template with C linkage
/usr/local/include/g++-3/stl_alloc.h: At top level:
...
=======================

--- On Tue, 9/23/08, Jeff Squyres <jsquyres_at_[hidden]> wrote:

From: Jeff Squyres <jsquyres_at_[hidden]>
Subject: Re: [OMPI users] where is mpif.h ?
To: "Open MPI Users" <users_at_[hidden]>
Date: Tuesday, September 23, 2008, 2:13 PM

See that FAQ entry I pointed to.

${includedir} is the default "include" directory that came in from
running OMPI's configure (defaults to $prefix/include). Likewise for $
{libdir}; it's the "library" directory that came in from running

OMPI's configure (defaults to $prefix/lib).

On Sep 23, 2008, at 4:41 PM, Shafagh Jafer wrote:

> In mpic++_wrapper-data.txt what do the following statments mean and
> where do they exactly point to??
>
> ----------
> includedir=${includedir}
> libdir=${libdir}
> ----------
>
> --- On Tue, 9/23/08, Jeff Squyres <jsquyres_at_[hidden]> wrote:
> From: Jeff Squyres <jsquyres_at_[hidden]>
> Subject: Re: [OMPI users] where is mpif.h ?
> To: "Open MPI Users" <users_at_[hidden]>
> Date: Tuesday, September 23, 2008, 5:11 AM
>
> It actually is expected behavior. Open MPI's wrappers do not
> automatically add -I for /usr/include or -L for /usr/lib because these
> directories are typically in the compiler's/linker's default
search
> path, and having the wrapper compilers manually add them tends to
> screw up search ordering.
>
> You can change the default behavior of the wrapper compilers, though
> -- see this FAQ entry for details:
>
>
>
http://www.open-mpi.org/faq/?category=mpi-apps#override-wrappers-after-v1.0
>
>
> On Sep 23, 2008, at 6:40 AM, Jed Brown wrote:
>
> > On Tue 2008-09-23 08:50, Simon Hammond wrote:
> >> Yes, it should be there.
> >
> > Shouldn't the path be automatically included by the mpif77
> wrapper? I
> > ran into this problem when building BLACS (my default OpenMPI 1.2.7
> > lives in /usr, MPICH2 is at /opt/mpich2). The build tries
> >
> > $ /usr/bin/mpif90 -c -I. -fPIC -Wno-unused-variable -g
> > bi_f77_mpi_attr_get.f
> > Error: Can't open included file 'mpif.h'
> >
> > but this succeeds
> >
> > $ /usr/bin/mpif90 -c -I. -I/usr/include -fPIC -Wno-unused-variable
> > -g bi_f77_mpi_attr_get.f
> >
> > and this works fine as well
> >
> > $ /opt/mpich2/mpif90 -c -I. -fPIC -Wno-unused-variable -g
> > bi_f77_mpi_attr_get.f
> >
> > Is this the expected behavior?
> >
> > Jed
> > _______________________________________________
> > 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