1) Create directory
First create yourself a directory under your home(!) (so it gets backup up) in which you want to create the executable.
I usually call mine:
~/gem/v_5.1.1/Abs/...
2) Populate directory
Go into the executable directory you created above.
a) Clone the Git repository you want
For example:
git clone ~winger/gem/v_5.1.1/Abs/UQAM_development_FLake_CLASS/gem
then change into 'gem' directory:
cd gem
b) Create working directories
So the object files, libraries and executables will not be under your home, create links for the directories 'build' and 'work'. Pick a place under which you want to keep the object files, libraries and executables, for example:
work_space=~/projects/def-professor/${USER}/GEM_WORK_DIR
Create the directories and the links:
mkdir -p ${work_space}/build
mkdir -p ${work_space}/work
ln -s ${work_space}/build
ln -s ${work_space}/work
3) Create the executables
a) Acquire compiler:
module add intel/2021.2.0 fftw-intel-2021
b) Set the variable 'abs_dir' to the name of your executable directory (needed under d))
abs_dir=$(pwd)
c) Change into 'build' directory:
cd build
d) Create make files and dependencies
cmake -DCOMPILER=intel -DCMAKE_VERBOSE_MAKEFILE=ON -DWORK_PREFIX=${abs_dir}/work ${abs_dir}/project
e) Compile and create executable
make -j4 work
The key '-j4' makes the command use 4 cores in parallel. But you can also run it on one core only with:
make work
4) Use your executable
To use your own executable set 'GEM_ovbin' in your 'configexp.cfg' to the path of your executable directory, up until but excluding the 'gem' directory. For example:
GEM_ovbin=~/gem/v_5.1.1/Abs/my_abs