4. Installing PRRTE
4.1. For More Information
This file is a very short overview of building and installing the PMIx Reference RunTime Environment (PRRTE). More information is available in the FAQ section on the PRRTE web site.
4.2. Minimum PMIx version
The configure
script in PRRTE v3.0.6rc1 must be able to find an
OpenPMIx installation that is 4.2.4 or higher. If
configure
cannot find a suitable OpenPMIx version, it will abort
with an error.
If OpenPMIx cannot be found in default preprocessor and linker search
paths, you can specify the --with-pmix=DIR
CLI option to tell
configure
where to find it.
4.3. Developer Builds
If you have checked out a DEVELOPER’S COPY of PRRTE (i.e., you checked out from Git), you should read the Developer’s Guide section before attempting to build PRRTE. You must then run:
shell$ ./autogen.pl
You will need very recent versions of GNU Autoconf, Automake, and
Libtool. If autogen.pl
fails, read the Developer’s Guide. If anything else fails, read the
Developer’s Guide. Finally, we suggest
reading the Developer’s Guide.
Note
Developer’s copies of PRRTE typically include a large performance penalty at run-time because of extra debugging overhead.
4.4. User Builds
Building PRRTE is typically a combination of running configure
and make
. Execute the following commands to install the PRRTE
system from within the directory at the top of the tree:
shell$ ./configure --prefix=/where/to/install
[...lots of output...]
shell$ make all install
If you need special access to install, then you can execute make
all
as a user with write permissions in the build tree, and a
separate make install
as a user with write permissions to the
install tree.
Compiling support for specific compilers and environments may require
additional command line flags when running configure
. Note that
VPATH builds are fully supported. For example:
shell$ tar xf prrte-X.Y.Z.tar.gz
shell$ cd prrte-X.Y.Z
shell$ mkdir build
shell$ cd build
shell$ ../configure ...your options...
[...lots of output...]
shell$ make all install
Parallel builds are also supported (although some versions of make
,
such as GNU make, will only use the first target listed on the command
line when executable parallel builds). For example (assume GNU make):
shell$ make -j 4 all
[...lots of output...]
shell$ make install
Parallel make is generally only helpful in the build phase; the installation process is mostly serial and does not benefit much from parallel make.