Jeff,
What I meant is the default Linux behavior is to first lookup
dependencies in the rpath, and then fallback to LD_LIBRARY_PATH
*unless* -Wl,--enable-new-dtags was used at link time.
In the case of Open MPI, -Wl,--enable-new-dtags is added to the MPI
wrappers,
but Open MPI is *not* built with this option.
That means, that by default, mca_pml_ucx.so and friends will get
libuc?.so libraries at runtime from rpath
(and that cannot be overridden by LD_LIBRARY_PATH).
Cheers,
Gilles
On 1/28/2021 12:52 AM, Jeff Squyres (jsquyres) wrote:
On Jan 27, 2021, at 2:00 AM, Gilles Gouaillardet via devel
<devel@lists.open-mpi.org <mailto:devel@lists.open-mpi.org>> wrote:
Tim,
a simple option is to
configure ... LDFLAGS="-Wl,--enable-new-dtags"
If Open MPI is built with this option, then LD_LIBRARY_PATH takes
precedence over rpath
(the default is the opposite as correctly pointed by Yossi in an
earlier message)
Are you sure about the default? I just did a default Open MPI v4.1.0
build on Linux with gcc 8.x:
$ mpicc --showme
gcc -I/home/jsquyres/bogus/include -pthread -Wl,-rpath
-Wl,/home/jsquyres/bogus/lib -Wl,--enable-new-dtags
-L/home/jsquyres/bogus/lib -lmpi
--
Jeff Squyres
jsquy...@cisco.com <mailto:jsquy...@cisco.com>