Last update:


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

Due to a bug on the released  rpm packages as temporary solution install ROOT from this repository:

sudo wget -O /etc/yum.repos.d/root.repo https://nexus.pd.infn.it/artifacts/repository/repo-files/root-c17.repo

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

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

sudo su -


Move to installation directory

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

sed -i 's|/bin/env python|/usr/bin/env python2|g' /opt/ilcsoft/muonc/CEDViewer/v01-18/bin/ced2go

Define the init file for profile

wget -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.

BTW With this installation you need to modify the geometry's path in the configuration file: /usr/share/muonc-detector-geometry/MuColl_v1/MuColl_v1.xml; also 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:

git clone https://github.com/MuonColliderSoft/MuonCutil.git

cd MuonCutil/SoftCheck/

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

Event display

ced2go -d /opt/ilcsoft/muonc/detector-simulation/geometries/MuColl_v1/MuColl_v1.xml Output_REC.slcio



  • No labels