Version v02-07-MC¶
Info
Last update: 04 Nov 2021
Operating system¶
Start from a CentOS8 machine (tested on CentOS Linux release 8.4.2105)
sudo yum -y install epel-release yum-utils wget git
sudo yum-config-manager --set-enabled powertools
sudo yum-config-manager --set-enabled appstream
New INFN CA¶
sudo wget -O /etc/yum.repos.d/EGI-trustanchors.repo http://repository.egi.eu/sw/production/cas/1/current/repo-files/EGI-trustanchors.repo
sudo yum -y install ca-policy-egi-core
sudo ln -s /etc/grid-security/certificates/USERTrustRSACertificationAuthority.pem /etc/pki/ca-trust/source/anchors/
sudo ln -s /etc/grid-security/certificates/GEANTeScienceSSLCA4.pem /etc/pki/ca-trust/source/anchors/
sudo wget -O /etc/pki/ca-trust/source/anchors/GEANT-OV-RSA-CA-4.pem https://pandora.infn.it/public/483fb5/dl/GEANT-OV-RSA-CA-4.pem
sudo update-ca-trust extract
Setting yum repositories¶
sudo wget -O /etc/yum.repos.d/mc-extras.repo https://nexus.pd.infn.it/artifacts/repository/repo-files/mc-extras.repo
sudo wget -O /etc/yum.repos.d/acts.repo https://portal.nersc.gov/cfs/atlas/kkrizka/repos/acts/acts.repo
Some useful packages.. and some extras¶
sudo yum -y install binutils-devel boost173-devel bzip2 chrpath cmake doxygen eigen3-devel emacs eog expat-devel freeglut-devel gcc gcc-c++ gedit giflib-devel glibc glibc-common glibc-devel glibc-headers glibc-static glibc-utils graphviz htop libjpeg-turbo-devel libpng-devel libquadmath-devel libSM-devel libstdc++-devel libtiff-devel libX11-devel libXext-devel libXft-devel libXmu-devel libXpm-devel make mesa-dri-drivers mlocate mysql mysql-devel openmotif-devel patch python2 python3-devel rsync screen sshpass subversion tbb-devel texlive texlive-multirow texlive-sectsty texlive-tocloft texlive-xtab valgrind vim-enhanced xorg-x11-xauth xrootd-devel zip zlib-devel
Framework¶
Install geant4 and others dependencies¶
sudo yum -y install clhep-devel eigen3-devel geant4 geant4-devel gsl-devel HepMC3-devel
sudo geant4-dataset-download
Install ROOT¶
Bug
Due to a bug on the released rpm packages as temporary solution install ROOT from this repository:
sudo yum -y install root root-gdml root-genvector root-geom root-graf3d-eve root-graf3d-eve7 root-gui-browserv7 root-minuit2 root-smatrix root-tmva root-tpython root-unuran python3-root root-gui-fitpanel root-roofit root-roofit-more root-tmva-gui
Warning
Check if it installs the version: 6.22.06-1
Workarounds¶
sudo alternatives --set python /usr/bin/python3
sudo sed -i 's|include_next|include|g' /usr/include/c++/8/cstdlib
sudo sed -i 's|include_next|include|g' /usr/include/c++/8/bits/std_abs.h
sudo sed -i 's|include_next|include|g' /usr/include/c++/8/cmath
sudo wget -O /usr/include/c++/8/x86_64-redhat-linux/bits/c++config.h https://raw.githubusercontent.com/MuonColliderSoft/MuonCollider-docker/v.1.5/CentOS8/c%2B%2Bconfig.h
sudo wget -O /usr/include/c++/8/x86_64-redhat-linux/32/bits/c++config.h https://raw.githubusercontent.com/MuonColliderSoft/MuonCollider-docker/v.1.5/CentOS8/c%2B%2Bconfig_32.h
Installation¶
Build setup¶
If you decide to follow these instructions and to install under /opt you need superuser privileges
Move to installation directory and clone the right repositories:
cd /opt
git clone https://github.com/MuonColliderSoft/MuonCutil.git
cd /opt/MuonCutil && git checkout v02-07-MC
cd /opt
git clone https://github.com/MuonColliderSoft/iLCInstall.git
cd /opt/iLCInstall && git checkout v02-03-01-MC
Copy the last configuration files
cd /opt/iLCInstall/
mkdir releases/development
cp /opt/MuonCutil/releases/development/* releases/development
Software installation¶
./ilcsoft-install releases/development/release-base.cfg --install-prefix=/opt/ilcsoft -v -i
./ilcsoft-install releases/development/release-ilcsoft.cfg --install-prefix=/opt/ilcsoft -v -i
Install the last geometry¶
For the MuonCollider we update the detector's geometry
cd /opt/ilcsoft/muonc
git clone https://github.com/MuonColliderSoft/detector-simulation.git
cd /opt/ilcsoft/muonc/detector-simulation && git checkout v01-02-MC
Post installation¶
Change ced2go to force to use python2
Define the init file for profilewget -O /etc/profile.d/ilcsoft.sh https://raw.githubusercontent.com/MuonColliderSoft/MuonCollider-docker/v.1.5/CentOS8/profile.d_ilcsoft.sh
Install via rpms experimental¶
This is a working in progress method to install the software, alternative to the manual installation procedure, use at your own risk.
Note
With this installation you configuration paths are:
* for geometry: **/usr/share/muonc-detector-geometry/MuColl_v1/MuColl_v1.xml**;
* for ACTs the geometry and the material description files are in the **/usr/share/ACTSTracking/data/** directory.
Setting yum repository¶
sudo wget -O /etc/yum.repos.d/muoncollider.repo https://cld-smact-02.pd.infn.it/artifacts/repository/repo-files/muoncollidersoft.repo
Install the required packages¶
sudo yum -y install python3-dd4hep muonc-detector-geometry ilc-marlin-dd4hep ilc-marlin-fastjet ilc-marlin-kinfit-processors ilc-overlay ilc-lcfi-plus ilc-conformal-tracking ilc-marlin-reco ilc-forward-tracking ilc-marlin-trk-processors ilc-ced-viewer ilc-ddmarlin-pandora ilc-lctuple ilc-clic-performance ilc-acts-tracking
sudo geant4-dataset-download
Test¶
To check your installation you can use the following simple tests. You need again the utils repository, so login as user and clone it again:
Simulation¶
ddsim --compactFile /opt/ilcsoft/muonc/detector-simulation/geometries/MuColl_v1/MuColl_v1.xml --steeringFile sim_steer.py > sim.out
Reconstruction¶
Marlin --InitDD4hep_mod4.DD4hepXMLFile=/opt/ilcsoft/muonc/detector-simulation/geometries/MuColl_v1/MuColl_v1.xml reco_steer.xml > reco.out