Fedora

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

Install the following using dnf


sudo -E dnf install gcc \
  gcc-c++ \
  gcc-gfortran \
  tcl \
  tk \
  findutils \
  make \
  freeglut-devel \
  libXt-devel \
  libX11-devel \
  m4 \
  blas-devel \
  lapack-devel \
  git \
  xz-devel

Download and install one our redistributable packages according to your version of Fedora.

Once downloaded, the package can be installed via the rpm utility:


sudo rpm -i moose-environment_fedora-*.rpm

Once complete, the on-screen instructions will ask you to close any opened terminal windows. So, in a new terminal window, attempt to load the moose-dev-gcc module:


module load moose-dev-gcc

If no errors were generated running the above command, you have successfully installed moose-environment package. While optional, please read the next section about modifying your Bash Profile. If you do not, you will have to perform the above module load moose-dev-gcc command each and every time you open a new terminal window before performing any MOOSE-based development.

Modify your Bash Profile

For bash users (the default shell for most users), if you wish to have the moose-dev-gcc module loaded automatically with each new terminal session, copy and paste the following (which will append the necessary module load command to the end of your bash profile):

  • GUI Users:

    
    echo "module load moose-dev-gcc" >> ~/.bashrc
    

  • Console Users:

    
    echo "module load moose-dev-gcc" >> ~/.bash_profile
    
    note:Both profiles?

    Some distributions are configured to source both of these files regardless of the method you use to log into your machine (meaning you may only need to modify one). Your milage may vary.

note:Multiple Users

Each user of the machine wishing to use the moose-environment must also perform the above bash profile modification.

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.