Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: [OMPI devel] rpath issues (re: svn:open-mpi r30005 - trunk/config)
From: Jeff Squyres (jsquyres) (jsquyres_at_[hidden])
Date: 2013-12-20 08:54:35


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/