MacOS High Sierra or Older

warning:Consider updating to Catalina or Mojave

Due to the unfortunate difficulty Apple has placed on its users wishing to develop on platforms older than Mojave, it is strongly encouraged users upgrade to the lastest MacOS version available.

Minimum System Requirements

In general, the following is required for MOOSE-based development:

  • GCC/Clang C++11 compliant compiler (GCC @ 4.8.4, Clang @ 3.5.1 or greater)

    • Note: Intel compilers are not supported.

  • Memory: 16 GBs (debug builds)

  • Processor: 64-bit x86

  • Disk: 30GB

Prerequisites

The following, is required to be installed before you can begin using MOOSE.

  • Xcode Command Line Tools (CLT). To install CLT on your machine, open a terminal and run:

    
    xcode-select --install
    

    If you do not have both Xcode and CLT installed, you will be presented with a dialog box allowing you to install CLT. There are two choices, 'Get Xcode' and 'Install'. Choose 'Install' to install CLT. We will need Xcode as well, but choosing 'Get Xcode' will send you to the App Store and will ultimately fail if you are not running the lastest version of Mac OS.

  • Xcode. Log into Apple's Developer website (iTunes account required) and obtain the appropriate version of Xcode pertaining to your version of Mac OS. Once downloaded, you will need to extract the Xcode-*.xip file, and move the Xcode.app to your /Applications folder. Once that is done, you must then open Xcode to complete the installation.

  • Download and install XQuartz

  • High Sierra 10.13: moose-environment_osx-highsierra_20191125_x86_64.pkg

Modify your Bash Profile

During the installation of the moose-environment package, you have two opportunities to allow the installer to modify your bash profile. This will allow the moose-environment module system and compiler stack to be made available by default with every new terminal window opened.

  • The first is available after clicking 'Customize' during the install. While in this pane, check the option "MOOSE Environment", and then continue by clicking 'Install'.

  • The second is after the installer has completed, where you will be presented with a pop-up window alerting you to either allow the installer to make this change, or to do nothing. If you choose 'Cancel' at this point, know that you are now responsible for altering your bash profile yourself. In order to make the module system available, you must instruct your bash profile(s) to source the following file:

    
    source /opt/moose/environments/moose_profile
    

    Once sourced, you can then load an appropriate compiler stack for MOOSE-based development:

    
    module load moose-dev-clang
    
note:Finalize Installation

Once the installer has completed, and/or you chose to modify your bash profile yourself, you must close any opened terminal windows, and re-open them to use the MOOSE environment.

Obtaining and Building MOOSE

Cloning MOOSE

MOOSE is hosted on GitHub and should be cloned directly from there using git. We recommend creating a directory named projects to put all of your MOOSE related work.

To install MOOSE run the following commands in a terminal.


mkdir ~/projects
cd ~/projects
git clone https://github.com/idaholab/moose.git
cd moose
git checkout master
note

The master branch of MOOSE is the stable branch that will only be updated after all tests are passing. This protects you from the day-to-day changes in the MOOSE repository.

Compile libMesh

MOOSE directly relies on the libMesh finite-element framework. Because of this strong tie MOOSE contains a particular version of libMesh that we have vetted for our users. To pull down and compile this version of libMesh you simply need to run a script in MOOSE:


cd ~/projects/moose
./scripts/update_and_rebuild_libmesh.sh
warning

Do not use sudo when running update_and_rebuild_libmesh.sh.

Compile and Test MOOSE


cd ~/projects/moose/test
make -j 4
./run_tests -j 4

If the installation was successful you should see most of the tests passing (some tests will be skipped depending on your system environment).

Head back over to the Getting Started page to continue your tour of MOOSE.