2. Installation
2.1. Libraries
To compile the h-NUMO model, one needs the following packages installed on the system:
gcc version 8 and aboveopenmpimakenetcdf2.2. Installation instructions
h-NUMO will need the mpi90 command in order to compile. It is up to the user to ensure that these packages exist on their computing platform.
Clone the repository to a local directory
git clone git@github.com:ygahounzo/h-NUMO.git
Go to the base directory of the repository
cd
h-NUMO
Install and compile h-NUMO:
2.1. On HPC systems: Ensure that the required libraries are loaded (gcc, openmpi, netcdf).
At the root of the
h-NUMOdirectory type the following command to compile p4est and h-NUMOmake hnumoOne may need to edit the
config.userfile to specify the correct compilers paths and flags for their platform2.2. On MacOS: use Homebrew to install the required libraries:
Install Homebrew if you haven’t already: https://brew.sh/
Install dependencies:
brew install gcc open-mpi netcdf
Then at the root of the
h-NUMOdirectory type the following command to compile p4est and h-NUMOmake hnumo-brew2.2. On Debian/Ubuntu: use APT to install the required libraries:
Install dependencies:
sudo apt-get install gcc openmpi-bin libopenmpi-dev libnetcdf-dev libnetcdff-devsudo apt-get install zlib1gto avoid zlib errors during compilation
Then at the root of the
h-NUMOdirectory type the following command to compile p4est and h-NUMOmake hnumo-debianWarning
Sometimes simple make does not work, and you need to compile p4est
- Compile p4est by typing from
h-NUMOroot directory make p4est/local/lib/libp4est.a
- Compile p4est by typing from
- Export path to the p4est library
To make sure this is exported every time you log-in, put the following line to
~/.bash_profilefile:export LD_LIBRARY_PATH=$PATH:<path_to_h-NUMO>/p4est/local/libwhere <path_to_h-NUMO> is the location where you have installed h-NUMO
Just in case type source ~./bash_profile, and it is not a bad idea to include this source command in your run scripts
- Compile NUMO by going to its directory and typing:
make hnumo(check the config.user if you want to compile on a specific platforms)
Once you successfully make h-NUMO, additional directories will result. These are:
bin
depend.mk
include