Matthew Lawe’s perfect instructions for compiling highland2 on the Lancaster (CentOS7) cluster “First time, Every time”*:
- First create a folder within which to place your
highland2
installation:
$ mkdir /home/t2k/user/path/to/highland/installation
- Move into that directory:
$ cd /home/t2k/user/path/to/highland/installation
- Recursively checkout
nd280Highland2
:
$ cmt co -R nd280Highland2 -r v2r49
- That working directory should then contain the following directories:
highland2
,nd280Highland2
,psyche
,nd280Psyche
- You now need to ensure the
highland2/oaAnalysisReader
is configured for the software production you intend to use. Edit the therequirements
file to set themacro PRODUCTIONDIR "prod6T"
line to the appropriate production as shown in the table at the top of the file. - You then need to
export
yourCMTPATH
to include a location forROOT
and the directory containing thehighland2
directories:
$ export CMTPATH=/home/t2k/user/path/to/highland/installation/:/t2k/Software/v12r25
- If using
ROOT
from/t2k/Software/v12r25
make sure yourCMTCONFIG
is set toLinux-x86_64
:
$ export CMTCONFIG=Linux-x86_64
- Then move to the
cmt
directory withinnd280highland2
:
$ cd /home/t2k/user/path/to/highland/installation/nd280Highland2/v2r49/cmt
- Source the
setup.sh
file in thecmt
directory:
$ source setup.sh
- Configure the software:
$ cmt broadcast cmt config
- Compile the software:
$ cmt broadcast cmt make
- Watch as it all compiles perfectly…
- To check it has worked, try running a couple of the executables without arguments to ensure they exist and don’t seg fault:
$ RunCreateFlatTree.exe
$ RunNumuCCAnalysis.exe
*“First time, Every time” is not guaranteed…