Skip to content

Software Installation and Dependencies

Liam Ó Súilleabháin edited this page May 28, 2024 · 18 revisions

If you need help, @ me (Liam) on Slack. 🙂

Running on DUNE GPVMs (dunegpvm??.fnal.gov)

Building and running the software on the GPVMs is easy, navigate to your app area cd /exp/dune/app/users/${USER}, clone the code: git clone [email protected]:DUNE/dune-tms.git or git clone https://github.com/DUNE/dune-tms and then source setup_FNAL.sh and make.

You can now run the executables, e.g. ConvertToTMSTree.exe [EDepSim output file] [Output filename] with an edep-sim (.root) file from the Datasets page.

This is written for Ubuntu 22.04, but should mostly work on other distributions. If you have your own ROOT/Geant/etc. and need assistance building against that feel free to ask.

Note: Git will fail to clone over git or ssh protocols if you do not have an ssh public key. If you don't have an ssh key you can run ssh-keygen with defaults to generate one.

Dependencies (Regular)

apt-get install libgl2ps-dev gfortran libpcre3-dev xlibmesa-glu-dev libglew-dev libftgl-dev libmysqlclient-dev libfftw3-dev libcfitsio-dev graphviz-dev libavahi-compat-libdnssd-dev libldap2-dev python3-dev python3-numpy libxml2-dev libkrb5-dev libgsl0-dev qtwebengine5-dev nlohmann-json3-dev

Dependencies (Specific)

Geant4

Precompiled binary release available here:

cd where/you/want/geant/installed wget -q https://cern.ch/geant4-data/releases/lib4.10.7.p04/Linux-g++8.3.0-CC7.tar.gz tar xzf Linux-g++8.3.0-CC7.tar.gz export GEANT_DIR=$PWD/Geant4-10.7.4-Linux; export PATH=$PATH:$PWD/Geant4-10.7.4-Linux/bin/; export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/Geant4-10.7.4-Linux/lib64/

ROOT

Precompiled binary release available here:

cd where/you/want/ROOT/installed wget -q https://root.cern/download/root_v6.30.02.Linux-ubuntu22.04-x86_64-gcc11.4.tar.gz tar xzf root_v6.30.02.Linux-ubuntu22.04-x86_64-gcc11.4.tar.gz source $PWD/root/bin/thisroot.sh export ROOT_DIR=$PWD/root/

Edep-Sim

Build from source:

cd where/you/want/edep-sim/installed git clone [email protected]:ClarkMcGrew/edep-sim.git or git clone https://github.com/ClarkMcGrew/edep-sim if you(r PC) insist(s) on HTTPS. cd edep-sim; export EDEPSIM_DIR=$PWD; mkdir -p Linux; mkdir -p build; # Linux is the directory we install into, build where we build. mkdir -p $EDEPSIM_DIR/Linux; cd build; cmake ../ -DVDT_LIBRARY=$ROOT_DIR/lib/libvdt.so -DVDT_INCLUDE_DIR=$ROOT_DIR/include/ -DCMAKE_MODULE_PATH=$ROOT_DIR/cmake:$GEANT_DIR -DROOT_DIR=$ROOT_DIR -DGeant4_DIR=$GEANT4_DIR -DEDEPSIM_READONLY=FALSE -DCMAKE_INSTALL_PREFIX=$EDEPSIM_DIR/Linux; make && make install

Build dune-tms

cd where/you/want/it git clone [email protected]:DUNE/dune-tms.git cd dune-tms

With CMake

If your environment is setup to run root/geant/edep-sim it should be enough to do:

mkdir build; cd build cmake ../ -DCMAKE_INSTALL_PREFIX=../Linux make && make install

With Make (Classic)

EDEPSIM_LIB=$EDEPSIM_DIR/Linux/lib EDEPSIM_INC=$EDEPSIM_DIR/Linux/include CLHEP_INC=$GEANT4_DIR/include/Geant4 make

Etc.

The formatting on this page is cat. This is github's fault.