Ubuntu

recent

ubuntu-badge

development

ubuntu-badge-devel

master

ubuntu-badge-master

Install dependencies

MPICH does not currently work on 24.04, so OpenMPI is used instead. If you already have multiple versions of MPI installed, see Setting the default MPI to set the correct one.

#
# Make sure your system is up-to-date with standard build software
#
sudo apt update
sudo apt install build-essential g++ gfortran

#
# Use apt (or apt-get) to install these packages
# [ you should only need to do this once ]
#
sudo apt install libopenmpi-dev 
sudo apt install libeigen3-dev
sudo apt install libpng-dev

#
# Install these packages if compiling with clang
#
sudo apt install clang libgfortran-14-dev libstdc++-14-dev

#
# These are needed for regression test scripts and other code infrastructure
#
sudo apt install lcov doxygen

# Needed for regression testing
sudo apt install python3-yt python3-matplotlib python3-numpy python3-pandas

# Needed to build documentation
sudo apt install python3-sphinx
sudo apt install python3-sphinx-rtd-theme python3-sphinx-design
sudo apt install python3-sphinx-copybutton python3-sphinxcontrib.bibtex
sudo apt install python3-xmltodict

# Needed for linting and code scraping
sudo apt install python3-clang
sudo apt install npm
npm install -g eclint
#
# Make sure your system is up-to-date with standard build software
#
sudo apt update
sudo apt install build-essential g++ gfortran

#
# Use apt (or apt-get) to install these packages
# [ you should only need to do this once ]
#
sudo apt install libmpich-dev libmpich12 mpich
sudo apt install libeigen3-dev
sudo apt install libpng-dev

#
# Install these packages if compiling with clang
#
sudo apt install clang

#
# These are needed for regression test scripts and other code infrastructure
#
sudo apt install python3-pip npm lcov doxygen

# Needed for regression testing
pip3 install yt matplotlib numpy pandas

# Needed to build documentation
pip3 install sphinx sphinx_rtd_theme sphinx_design
pip3 install sphinx-copybutton sphinxcontrib-bibtex xmltodict

# Needed for linting and code scraping
# You need to install python clang with apt, otherwise you must manually
# provide the clang library location in the python script.
sudo apt install python3-clang
sudo apt install npm
npm install -g eclint

Build code and run unit tests

#
# In the alamo directory, run this command with any additional arguments. 
#
./configure 

#
# Compile the code by running make
#
make

#
# Executables should now be available under ./bin
#
ls ./bin/

#
# Run the unit test suite in serial using the regression test script
#
scripts/runtests.py --dim=3 --serial tests/Unit

Build this documentation

#
# Generate documentation with
#
make docs

# Open 
#    docs/build/html/index.html
# in a browser to view the built documentation