Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Follow the instructions on the Downloads page to check out a copy of the GMAT source code from SourceForge.

Optionally, you can also check out a copy of the plugins repository further down on that page. If you choose to get the plugins code, you only need to check out the trunk/code directory from the repository. The rest is associated testing and documentation code, and is quite large.

We'll refer to the SourceForge checkout assf and the internal code checkout as plugins.

Get the prerequisites

Toolchain

...

  1. Download wxMac 2.8.12 from http://wxwidgets.org.
  2. Unzip and untar the downloaded file.
  3. In a Terminal, run the following commands from the new wxMac-2.8.12 directory (replacing /path/to/wxMac-2.8.12 with the absolute path to your wxMac-2.8.12 directory):
    mkdir build-gmat
    cd build-gmat
    arch_flags="-arch i386"
    ../configure CFLAGS="$arch_flags" CXXFLAGS="$arch_flags" CPPFLAGS="$arch_flags" LDFLAGS="$arch_flags" OBJCFLAGS="$arch_flags" OBJCXXFLAGS="$arch_flags" --prefix=/path/to/wxMac-2.8.12/build-gmat --with-opengl
  4. Run make to compile the wxMac libraries:
    make
  5. Run make install to install the libraries and correctly set install paths. This is necessary due to bug GMT-3021.   (This may not be required in the near future.)
    make install

SPICE

  1. Download ftp://naif.jpl.nasa.gov/pub/naif/toolkit//C/MacIntel_OSX_AppleC_32bit/packages/cspice.tar.Z.
  2. Uncompress and untar cspice.tar.Z to result in a cspice directory.

f2c

  1. Download smb://mesa-file/595/GMAT/GMAT_3rdParty.zip from internal repository (internal users only)
  2. Unzip and move the f2c32 directory to your preferred location.

...

The public GMAT repository (on SourceForge) includes several plugins that can be compiled along with the main application.

...

MatlabInterfacePlugin (not currently available)

The MatlabInterfacePlugin is available on OS X Leopard (10.5) and Snow Leopard (10.6) only.

...


Plugin configuration: To use the MATLAB interface plugin, you must have the following environment variable configured:
MATLABFORGMAT=/path/to/MATLAB_ver.app
You can do this system-wide by putting the variable and its value into the file ~/.MacOSX/environment.plist using the OS X Property List Editor. See Apple QA1067 for details. You'll need to log off and log back on before the setting will take effect. (this does not work in later versions of OS X)

CInterfacePlugin (alpha)

Copy sf/plugins/CInterfacePlugin/build/macosx/CInterfaceEnv.mk to sf/plugins/CInterfacePlugin/src. No extra configuration of this file is necessary.

...

Configure and build the internal plugins

At the beginning of this guide, you may have checked out the trunk/code directory from the internal plugins repository. We'll refer to the location of this working copy as plugins.

Msise86Plugin

  1. Copy sf/plugins/Msise86Plugin/build/macosx/Msise86Env.mk to sf/plugins/Msise86Plugin/src.
  2. Edit the new sf/plugins/Msise86Plugin/src/Msise86Env.mk file:
    GMAT_CODE_LOCATION: path to sf/src; you'll need to remove one "../" and change trunk to the name you gave your sf working copy.
    GMAT_BIN_LOCATION: path to sf/application/bin; you'll need to remove one "../" and change trunk to the name you gave your sf working copy.
    F2C_LOCATION: path to the directory containing the f2c32 directory; you'll need to remove one "../" and change GMAT_3rdParty to the name of the directory above the f2c32 directory.
  3. Change to the sf/plugins/Msise86Plugin directory.
  4. Run make

The libMsise86.dylib plugin will be copied to the sf/application/plugins/proprietary directory.

NRLMsise00Plugin

  1. Copy sf/plugins/NRLMsise00Plugin/build/macosx/NRLMsise00Env.mk to sf/plugins/NRLMsise00Plugin/src.
  2. Edit the new sf/plugins/NRLMsise00Plugin/src/NRLMsise00Env.mk file:
    GMAT_CODE_LOCATION: path to sf/src; you'll need to remove one "../" and change trunk to the name you gave your sf working copy.
    GMAT_BIN_LOCATION: path to sf/application/bin; you'll need to remove one "../" and change trunk to the name you gave your sf working copy.
    F2C_LOCATION: path to the directory containing the f2c32 directory; you'll need to remove one "../" and change GMAT_3rdParty to the name of the directory above the f2c32 directory.
  3. Change to the sf/plugins/NRLMsise00Plugin directory.
  4. Run make

The libNRLMsise00.dylib plugin will be copied to the sf/application/plugins/proprietary directory.

Vf13OptimizerPlugin

  1. Copy sf/plugins/Vf13OptimizerPlugin/build/macosx/Vf13OptimizerEnv.mk to sf/plugins/Vf13OptimizerPlugin/src.
  2. Edit the new sf/plugins/Vf13OptimizerPlugin/src/Vf13OptimizerEnv.mk file:
    GMAT_CODE_LOCATION: path to sf/src; you'll need to remove one "-+ ../+-" and change trunk to the name you gave your sf working copy.
    GMAT_BIN_LOCATION: path to sf/application/bin; you'll need to remove one "-+ ../+-" and change trunk to the name you gave your sf working copy.
    F2C_LOCATION: path to the directory containing the f2c32 directory; you'll need to remove one "-+ ../+-" and change GMAT_3rdParty to the name of the directory above the f2c32 directory.
  3. Change to the sf/plugins/Vf13OptimizerPlugin directory.
  4. Run make

The libVF13Optimizer.dylib plugin will be copied to the sf/application/plugins/proprietary directory.

MarsGRAMPlugin (alpha)

  1. Copy sf/plugins/MarsGRAMPlugin/build/macosx/MarsGRAMEnv.mk to sf/plugins/MarsGRAMPlugin/src.
  2. Edit the new sf/plugins/MarsGRAMPlugin/src/MarsGRAMEnv.mk file:
    GMAT_CODE_LOCATION: path to sf/src
    GMAT_BIN_LOCATION: path to sf/application/bin
  3. Change to the sf/plugins/MarsGRAMPlugin directory.
  4. Run make

The libMarsGRAM.dylib plugin will be copied to the sf/application/plugins/proprietary directory.

CcsdsEphemerisFilePlugin

This plugin is obsolete and is no longer maintained.

DataFilePlugin

This plugin is obsolete and is no longer maintained.

available internally only