Open MPI logo

Source Code Access: Obtaining a Subversion Checkout

  |   Home   |   Support   |   FAQ   |  

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.


First, you will need a Subversion client. We recommend getting the latest version available. If you do not have the command "svn" in your path, you will likely need to download and install Subversion (note that you only need the Subversion client. Getting the server to compile may be quite complex and require a lot of dependencies -- the client is currently significantly easier to compile).

There are three general areas of the source code repository that will interest most users:

  • Trunk: The trunk is generally the head of Open MPI development. It is located in the directory /trunk in the repository.
  • Branches: Major stable releases are always branched. For example, the 1.0 series of Open MPI is available under the /branches/v1.0/ directory; the 1.1 series is available der /branches/v1.1/, etc. Hence, the head of development for a given series is available under its directory in /branches/.
  • Tags: Point releases are all tagged under the /tags directory. For example, version 1.0.0 is available under /tags/v1.0.0/, version 1.0.1 is available under /tags/v1.0.1/, version 2.3.4 is available under /tags/v2.3.4, etc.

Anonymous, read-only access

The base URL of the Open MPI Subversion repository is: http://svn.open-mpi.org/svn/ompi/. Use it to obtain a checkout of any portion of the repository. For example, to obtain a checkout of the trunk:

shell$ svn co http://svn.open-mpi.org/svn/ompi/trunk ompi-trunk
[...lots of output...]

The "list" Subversion command can be used to show which branches and tags are available:

shell$ svn list http://svn.open-mpi.org/svn/ompi/tags
[...list of the tag directories available...]

Once you have successfully checked out the code, continue on to the instructions on how to build from a Subversion checkout.

Note that Subversion is natively capable of using many forms of web proxies. If your network setup requires the user of a web proxy, consult the Subversion documentation for more details.

Authenticated access

Registered developers need to perform an authenticated checkout in order to be able to commit changes back to the repository. The procedure is identical to the anonymous, read-only checkout (detailed above) except that you should use "https" instead of "http":

shell$ svn co https://svn.open-mpi.org/svn/ompi/trunk ompi-trunk
[...lots of output...]

Note that the first time you perform an authenticated checkout on any machine, you will be prompted to accept svn.open-mpi.org's SSL certificate and to type in your Subversion username and password. For example:

shell$ svn co https://svn.open-mpi.org/svn/ompi/trunk ompi-trunk
Error validating server certificate for 'https://svn.open-mpi.org:443':
 - The certificate is not issued by a trusted authority. Use the
   fingerprint to validate the certificate manually!
Certificate information:
 - Hostname: svn.open-mpi.org
 - Valid: from Tue, 19 Jun 2012 00:00:00 GMT until Fri, 19 Jun 2015 23:59:59 GMT
 - Issuer: InCommon, Internet2, US
 - Fingerprint: 9c:7f:f3:30:3c:25:98:e5:09:00:d5:35:6d:dc:a9:71:05:3c:d4:91
(R)eject, accept (t)emporarily or accept (p)ermanently? 

If the fingerprint shown by your Subversion client matches what is displayed above, it is easiest to (p)ermanently accept the certificate (Subversion will warn you if the fingerprint ever changes).

If you want to be doubly sure, note that Open MPI's electronic resources (including Subversion) are hosted by the Computer Science Department at Indiana University in the United States. The Certifying Authority SSL certificate for the IU CS Department is available here: http://www.cs.indiana.edu/Facilities/FAQ/Mail/csci.crt.

Next, you'll be prompted for your password:

Authentication realm:  Open MPI Subversion repositories access: Powered by SVNManager
Password for 'your_username':

If the username displayed does not match your Subversion registered username, simply hit return and Subversion will prompt for your username:

Authentication realm:  Open MPI Subversion repositories access: Powered by SVNManager
Password for 'your_username':
Authentication realm:  Open MPI Subversion repositories access: Powered by SVNManager
Username: 

After you use the correct Subversion username and enter your Subversion password, the checkout will proceed.

Once you have successfully checked out the code, continue on to the instructions on how to build from a Subversion checkout.

NOTE: By default, Subversion caches your password under on your local computer (e.g., under $HOME/.subversion directory, or in your OS X keychain). Hence, you only need to enter it once. If you are uncomfortable with Subversion caching your password, consult the Subversion documentation.