Skip to content

GMAT Build Blog

Colin edited this page May 14, 2019 · 4 revisions

There are many ways to build GMAT. The first thing you have to realize is that GMAT has been built for many different platforms since it's 2008 release using many different build systems. We see files and documentation for various versions of Make, CMAKE Visual Studio 2008, 2012, 2015, 2017, mingw, etc., etc., etc. The point is there is lot of debris and you can't trust the documentation you find under the build tree. Here we document tips and techniques, good sources of information, etc. that allow us to successfully build code on the platforms we use.

Build Prequisites - All Platforms

GMAT uses third-party apps and frameworks which must be built in specific locations before you can even start to build GMAT. For instance, the following three should be built in "~/GMAT R2018a/ThirdParty".

  • ~/GMAT R2018a/ThirdParty/WxWidgets
  • ~/GMAT R2018a/ThirdParty/CSPICE (not really optional)
  • ~/GMAT R2018a/ThirdParty/Xerces

NASA Navigation and Ancillary Information Facility SPICE Toolkit for C

Xerces XML Parser

WxWidgets Cross-Platform GUI Library

The build documentation for prerequisites is a mess. We're not even sure which versions of the above libraries are required. One source is a power-point presentation from 2010 located in "~\GMAT R2018a/doc/PapersAndPresentations/DeveloperTalks/Compiling GMAT.pptx". This presentation does not list Xerces but somewhere along the way, it became a prerequisite.

Building NASA GMAT for Apple "Xcode" using MacPorts

Here we demonstrate how I did the c-make configuration for Apple Mojave (MacOS 10.14).

MacPorts and Ruby Homebrew both serve as a package manager.