This page is for developers
who want to work on the internals of Open MPI itself. If you are a
general user or system administrator looking to simply download
and install Open MPI, please
click here. |
After obtaining a successful Subversion
checkout, Git clone, or Mercurial clone, the following tools are
required for developers to compile Open MPI from its repository
sources (users who download Open MPI tarballs do not need these
tools - they are only required for developers working
on the internals of Open MPI itself):
The following table lists the versions that are used to make
nightly Open MPI tarballs. Other versions may work, but these are the
versions that we know work.
| Open MPI Release |
M4 Versions |
Autoconf Versions |
Automake Versions |
Libtool Versions |
Flex Versions |
| v1.0 | NA | 2.58 - 2.59 | 1.7 - 1.9.6 | 1.5.16 - 1.5.22 | 2.5.4 |
| v1.1 | NA | 2.59 | 1.9.6 | 1.5.16 - 1.5.22 | 2.5.4 |
| v1.2 | NA | 2.59 | 1.9.6 | 1.5.22 - 2.1a | 2.5.4 |
| v1.3 | 1.4.11 | 2.63 | 1.10.1 | 2.2.6b | 2.5.4 |
| v1.4 | 1.4.11 | 2.63 | 1.10.3 | 2.2.6b | 2.5.4 |
| v1.5 thru 1.5.4 | 1.4.13 | 2.65 | 1.11.1 | 2.2.6b | 2.5.4 |
| v1.5.5 and up | 1.4.16 | 2.68 | 1.11.3 | 2.4.2 | 2.5.35 |
| v1.6 | 1.4.16 | 2.68 | 1.11.3 | 2.4.2 | 2.5.35 |
| v1.7 | 1.4.16 | 2.69 | 1.12.2 | 2.4.2 | 2.5.35 |
| trunk | 1.4.16 | 2.69 | 1.12.2 | 2.4.2 | 2.5.35 |
Note that other version combinations may work, but are
untested and unsupported.
Note that the v1.4 and v1.5 series had their Automake versions
updated on 10 July 2011 (from 1.10.1 to 1.10.3, and 1.11 to 1.11.1,
respectively) due to CVE-2009-4029. This applies to all new snapshot
tarballs produced after this date, and the v1.4 series as of v1.4.4,
and the v1.5 series as of 1.5.4.
Autoconf/Automake Note: If Autoconf 2.60 (and higher) is
used, Automake 1.10 (and higher) must be used.
Libtool Note: The Open MPI v1.2 branch and later (including
the present trunk) require the use of the Libtool 2 so that Open MPI
can build the Fortran 90 module as a shared library. If (and only if)
you intend to not build the Fortran 90 library or your Fortran 77 and
Fortran 90 compilers have the same name (ie, gfortran), you can use
Libtool 1.5.22.
Note: There was a period of time
where OMPI nightly trunk snapshot tarballs were made with a Libtool 2.0 development snapshot. This is
now deprecated; Open MPI uses official Libtool releases (no official
Open MPI releases used the Libtool 2.0 development
snapshot).
Although it should probably be assumed, you'll also need a C/C++
compiler.
The HACKING file in the top-level directory of the Open MPI checkout
details how to install the tools listed above and the steps required
to build a developer checkout of Open MPI. It always contains the
most current information on how to build a developer's copy of Open
MPI.
shell$ ./configure --prefix=$HOME/openmpi-install
[...lots of output...] |
This configures Open MPI and tells it to install under
$HOME/openmpi-install.
NOTE: by default, when configuring and building
Open MPI from a developer checkout, all
debugging code is enabled. This results in a
significant run-time performance penalty. There are
several options for building an optimzed Open MPI; see the HACKING
file for more details.
NOTE: Most Linux distributions and OSX install Flex
by default (and this is sufficient). Other operating systems may
provide "lex", but this is notsufficient -- flex is required.
|