Minimum System Requirements
In general, the following is required for MOOSE-based development:
C++11 compliant compiler (GCC 4.8.4, Clang 3.4.0, and Intel 2017 or greater)
(included in any of our redistributable packages if you choose to install one)
Memory: 16 GBs (debug builds)
Processor: 64-bit x86
Install the following using apt-get
sudo apt-get install build-essential \ gfortran \ tcl \ git \ m4 \ freeglut3 \ doxygen \ libblas-dev \ liblapack-dev \ libx11-dev \ libnuma-dev \ libcurl4-gnutls-dev \ zlib1g-dev \ libhwloc-dev
Download and install one of our redistributable packages according to your version of Mint. Mint is a spinoff of Ubuntu. But the versions do not necessarly match (each Mint release is based on Ubuntu's LTS release schedule): https://en.wikipedia.org/wiki/Linux_Mint_version_history.
Follow the on-screen instructions about modifying your bash profile, which should be asking you to add the following to the end of your bash_profle:
if [ -f /opt/moose/environments/moose_profile ]; then . /opt/moose/environments/moose_profile fi
Once that is complete, close any opened terminals and re-open them.
Internal INL users may obtain the latest redistributable packages from the following location:
If you have any opened terminals at this point, you must close and re-open them to use the MOOSE environment. The following instructions will ultimately fail if you do not.
Obtaining and Building MOOSE
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
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.
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
Do not use
sudo when running update_and_rebuild_libmesh.sh.
Compile and Test MOOSE
After libMesh has compiled the next step is to 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).
MOOSE does not use traditional versioning, is under heavy development, and is being updated continuously. Therefore, it is important that you continue to update MOOSE as you use it to develop your application(s), we recommend weekly updates.
To update MOOSE use the following commands.
cd ~/projects/moose git fetch origin git rebase origin/master
Then return to your application, re-compile, and test.
cd ~/projects/YourAppName make -j4 ./run_tests -j4
Head back over to the Getting Started page to continue your tour of MOOSE.