Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] rpath issues (re: svn:open-mpi r30005 - trunk/config)
From: Jeff Squyres (jsquyres) (jsquyres_at_[hidden])
Date: 2013-12-23 09:23:31


I forget offhand if you need to specify additional flags for static linking to the wrappers. I'm on vacation and can't easily check.

You might want to experiment with

  ./configure --disable-shared --enable-static

and see if mpicc still passes the right list of -l flags for libmxm or not. If not, you might need to add something into your mxm configury to get the Right list of libraries passed down to mpicc -- I'm afraid I don't remember offhand, sorry!

On Dec 21, 2013, at 3:43 AM, Mike Dubman <miked_at_[hidden]> wrote:

> yet, it does.
>
>
> On Fri, Dec 20, 2013 at 8:12 PM, Jeff Squyres (jsquyres) <jsquyres_at_[hidden]> wrote:
> Cool; thanks.
>
> Does libmxm have a .a (static) version?
>
>
> On Dec 20, 2013, at 11:42 AM, Mike Dubman <miked_at_[hidden]> wrote:
>
> > Hi Jeff,
> > Thanks for comments.
> > I checked #1 and it does the trick, will fix and commit it.
> > as for #2 - we do not modify LDFLAGS in mca/mtl/mxm/configure.m4.
> > M
> >
> >
> > On Fri, Dec 20, 2013 at 3:54 PM, Jeff Squyres (jsquyres) <jsquyres_at_[hidden]> wrote:
> > This commit doesn't seem right. You can't just assign -Wl,-rpath to rpath something -- those flags are dependent on the actual back-end linker (which may not be gnu ld). We have a bunch of logic in configure that was just recently revamped to figure out what the rpath linker flags should be.
> >
> > I see the scenario you're describing: you basically want to override /etc/ld.so.conf with your own personal installation. In this situation, you must be doing "./configure --with-mxm=$HOME/mxm", right?
> >
> > 1. For your .m4 code, I think you should just pass "-L$ompi_check_mxm_libdir" as $5 to OMPI_CHECK_PACKAGE. Shouldn't an explicit -L always override an implicit ld.so.conf setting?
> >
> > 2. Is your configure.m4 for mxm adding -L$HOME/mxm/lib to the wrapper LDFLAGS? Because if so, then the new rpath stuff should be picking this up automatically and adding the right rpath flags (and runpath, if it's supported) for $HOME/mxm/lib into the wrapper compiler.
> >
> > Can you verify if this is correct?
> >
> > (note: these changes to the wrapper compiler only happened within the last week or so)
> >
> >
> >
> > On Dec 20, 2013, at 6:15 AM, <svn-commit-mailer_at_[hidden]> <svn-commit-mailer_at_[hidden]> wrote:
> >
> > > Author: miked (Mike Dubman)
> > > Date: 2013-12-20 06:15:41 EST (Fri, 20 Dec 2013)
> > > New Revision: 30005
> > > URL: https://svn.open-mpi.org/trac/ompi/changeset/30005
> > >
> > > Log:
> > > add rpath on mca_mtl_mxm.so to point to /path/to/mxm/lib/libmxm.so which was detected at configure time
> > > This *should* fix following situation:
> > >
> > > 1 mxm.rpm puts /etc/ld.so.conf.d/mxm.conf file during rpm install with libpath to /opt/mellanox/mxm/lib
> > > 2 some1 can extract mxm.rpm into $HOME/mxm and compile OMPI with new mxm location
> > > 3 during runtime, OMPI from prev step will pick MXM from step (1) instead of from step (2)
> > >
> > > cmr=v1.7.4:reviewer=ompi-rm1.7
> > >
> > > Text files modified:
> > > trunk/config/ompi_check_mxm.m4 | 9 +++++++--
> > > 1 files changed, 7 insertions(+), 2 deletions(-)
> > >
> > > Modified: trunk/config/ompi_check_mxm.m4
> > > ==============================================================================
> > > --- trunk/config/ompi_check_mxm.m4 Fri Dec 20 06:03:09 2013 (r30004)
> > > +++ trunk/config/ompi_check_mxm.m4 2013-12-20 06:15:41 EST (Fri, 20 Dec 2013) (r30005)
> > > @@ -29,15 +29,20 @@
> > >
> > > AS_IF([test "$with_mxm" != "no"],
> > > [AS_IF([test ! -z "$with_mxm" -a "$with_mxm" != "yes"],
> > > - [ompi_check_mxm_dir="$with_mxm"])
> > > + [
> > > + ompi_check_mxm_dir="$with_mxm"
> > > + ompi_check_mxm_libdir="$with_mxm/lib"
> > > + ])
> > > AS_IF([test ! -z "$with_mxm_libdir" -a "$with_mxm_libdir" != "yes"],
> > > [ompi_check_mxm_libdir="$with_mxm_libdir"])
> > >
> > > + ompi_check_mxm_rpath="-Wl,-rpath=$ompi_check_mxm_libdir"
> > > +
> > > OMPI_CHECK_PACKAGE([$1],
> > > [mxm/api/mxm_api.h],
> > > [mxm],
> > > [mxm_cleanup],
> > > - [],
> > > + [$ompi_check_mxm_rpath],
> > > [$ompi_check_mxm_dir],
> > > [$ompi_check_mxm_libdir],
> > > [ompi_check_mxm_happy="yes"],
> > > _______________________________________________
> > > svn-full mailing list
> > > svn-full_at_[hidden]
> > > http://www.open-mpi.org/mailman/listinfo.cgi/svn-full
> >
> >
> > --
> > Jeff Squyres
> > jsquyres_at_[hidden]
> > For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
> >
> > _______________________________________________
> > devel mailing list
> > devel_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/devel
> >
> > _______________________________________________
> > devel mailing list
> > devel_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>
> --
> Jeff Squyres
> jsquyres_at_[hidden]
> For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel

-- 
Jeff Squyres
jsquyres_at_[hidden]
For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/