@@ -31,30 +31,40 @@ be used with ``configure``:
3131 below; it may have some effect on ``--enable-static ``.
3232
3333* ``--disable-wrapper-runpath `` / ``--disable-wrapper-rpath ``: By
34- default, the wrapper compilers (e.g., ``mpicc ``) will enable
35- "runpath" or "rpath" support in generated executables on systems
36- that support it. That is, they will include a filesystem path
37- reference to the location of Open MPI's libraries in the application
38- executable itself. This means that the user does not have to set
39- ``LD_LIBRARY_PATH `` to find Open MPI's libraries, which can be
40- helpful if they are installed in a location that the run-time linker
41- does not search by default.
34+ default, the wrapper compilers (e.g., ``mpicc ``) will explicitly add
35+ "runpath" and "rpath" linker flags when linking user executables on
36+ systems that support them. That is, the created executables will
37+ include a filesystem path reference to the location of Open MPI's
38+ libraries in the application executable itself. This means that the
39+ user does not have to set ``LD_LIBRARY_PATH `` to find Open MPI's
40+ libraries, which can be helpful if they are installed in a location
41+ that the run-time linker does not search by default.
42+
43+ Using the ``--disable-wrapper-r*path `` options will prevent the
44+ wrappers from explicitly adding one or both of these linker flags.
4245
4346 .. note :: By default, the wrapper compilers prefer "runpath"
4447 behavior over "rpath" behavior.
4548
4649 * Using ``--disable-wrapper-runpath `` alters this
47- preference: "runpath" behavior will never be used.
48- Instead, the wrapper compilers will use "rpath" behavior
49- if it is supported.
50- * Using ``--disable-wrapper-rpath `` will disable *both *
51- "runpath" and "rpath" behavior in the wrapper compilers.
52-
53- .. important :: Note that the ``--disable-wrapper-runpath`` and
50+ preference: explicit "runpath" linker flags will not be
51+ added by the wrappers. However, "rpath" flags may still
52+ be added, if the platform supports them.
53+ * Using both ``--disable-wrapper-runpath `` *and *
54+ ``--disable-wrapper-rpath `` will prevent the wrappers
55+ from explicitly adding "runpath" *and * "rpath" linker
56+ flags.
57+
58+ .. caution :: Even if the wrapper compilers do not explicitly add
59+ "runpath" or "rpath" linker flags, the local compiler,
60+ linker, and/or operating system may implicitly enable
61+ either "runpath" or "rpath" behavior when linking.
62+
63+ .. important :: The ``--disable-wrapper-runpath`` and
5464 ``--disable-wrapper-rpath `` CLI options *only * affect
5565 the flags that the wrapper compilers use when
56- building MPI/OpenSHMEM applications. These options
57- do not affect how Open MPI or OpenSHMEM are built (to
66+ building MPI/SHMEM applications. These options do
67+ not affect how Open MPI or OpenSHMEM are built (to
5868 include the wrapper compilers themselves).
5969
6070 See the :ref: `Linker "rpath" and "runpath"
@@ -64,8 +74,8 @@ be used with ``configure``:
6474 affect the building and linking of Open MPI itself.
6575
6676 When either of "runpath" or "rpath" behaviors are enabled, the
67- wrapper compilers will hard-code the filesystem path location of the
68- Open MPI libraries into the Open MPI/OpenSHMEM application. The
77+ applications will have the filesystem path location of the Open MPI
78+ libraries hard-coded into the Open MPI/OpenSHMEM application. The
6979 most notable differences between "runpath" and "rpath" behavior are:
7080
7181 * runpath
0 commit comments