top of page

Download FAQ

How do I download Charm++?

The latest development version of Charm++ can be downloaded directly from our source archive. The Git version control system is used, which is available from here.

This development version may not be as portable or robust as the released versions. Therefore, it may be prudent to keep a backup of old copies of Charm++.

  1. Check out the latest development version of Charm++ from the repository:

    $ git clone

  2. This will create a directory named charm. Move to this directory:

    $ cd charm

    To obtain the current stable release, 6.10.2, switch to branch charm-6.10.2:

    $ git checkout charm-6.10.2

  3. And now build Charm (netlrts-linux example):

    $ ./build charm++ netlrts-linux-x86_64 [ --with-production | -g ]

This will make a netlrts-linux-x86_64 directory, with bin, include, lib etc subdirectories.

I have a question that isn't answered here. 

Click here for a full FAQ.

What are the licensing terms?

Charm++, CharmMPI, and other Charmworks software are free to use for non-profit research and evaluation purposes only. If you are interested in Charm++ for commercial use, please see our licensing options or contact us for more information. An evaluation copy of Charm++ is available upon request.

Click here for the full Charm++/Converse license.

How do I compile Charm++?

Run the interactive build script ./build with no extra arguments If this fails, email with the problem. Include the build line used (this is saved automatically in smart-build.log)

If you have a very unusual machine configuration, you will have to run ./build -help to list all possible build options. You will then choose the closest architecture, and then you may have to modify the associated and conv-mach.h files in src/arch to point to your desired compilers and options. If you develop a significantly different platform, send the modified files to so we can include it in the distribution.

How do I compile CharmMPI?

Run the build script ./build and choose the option for building “Charm++ and AMPI,” or just replace “charm++” in your full build command with “AMPI”, as in ./build AMPI netlrts-linux-x86_64.

I have a question that the full FAQ doesn't answer. Who can I talk to?

We want to ensure you have a positive experience with Charm++. If you ever have questions as you're evaluating Charm++ for your needs, please don't hesitate to reach out to us at​

bottom of page