Prerequisits
sudo yum install centos-release-scl sudo yum install devtoolset-8 sudo yum install git cmake3 gcc-c++ gcc binutils \ libX11-devel libXpm-devel libXft-devel libXext-devel openssl-devel sudo yum install gcc-gfortran pcre-devel \ mesa-libGL-devel mesa-libGLU-devel glew-devel ftgl-devel mysql-devel \ fftw-devel cfitsio-devel graphviz-devel \ avahi-compat-libdns_sd-devel openldap-devel python-devel \ libxml2-devel gsl-devel
Install ROOT from source and compile with gcc8
scl enable devtoolset-8 bash mkdir ROOT cd ROOT git clone --branch v6-24-00-patches https://github.com/root-project/root.git root_src mkdir build install cd build cmake3 -DCMAKE_INSTALL_PREFIX=../install ../root_src cmake3 --build . -j8 --target install cd .. source install/bin/thisroot.sh
Configure repositories
sudo cat > /etc/yum.repos.d/xdaq.repo <<EOF [xdaq] name=XDAQ Software Core baseurl=http://xdaq.web.cern.ch/xdaq/repo/core/15/cc7/x86_64/RPMS/ enabled=1 gpgcheck=0 [xdaq-worksuite] name=XDAQ Software worksuite baseurl=http://xdaq.web.cern.ch/xdaq/repo/worksuite/15/cc7/x86_64/RPMS/ enabled=1 gpgcheck=0 [xdaq-updates] name=XDAQ Software xaas baseurl=http://xdaq.web.cern.ch/xdaq/repo/xaas/15/cc7/x86_64/RPMS/ enabled=1 gpgcheck=0 EOF sudo cat > /etc/yum.repos.d/amc13-sw.repo <<EOF [cactus-amc13-base] name=CACTUS Project Software Repository for amc13 packages baseurl=http://cactus.web.cern.ch/cactus/release/amc13/1.2/centos7_x86_64/base/RPMS enabled=1 gpgcheck=0 EOF sudo cat > /etc/yum.repos.d/ipbus-sw.repo <<EOF [ipbus-sw-base] name=IPbus software repository baseurl=http://www.cern.ch/ipbus/sw/release/2.6/repos/centos7_x86_64/base/RPMS enabled=1 gpgcheck=0 [ipbus-sw-updates] name=IPbus software repository updates baseurl=http://www.cern.ch/ipbus/sw/release/2.6/repos/centos7_x86_64/updates/RPMS enabled=1 gpgcheck=0 EOF
Install cactus
sudo yum install cactusboards-amc13-tools-1.2.14-0.centos7 cactusboards-amc13-amc13-1.2.14-0.centos7 sudo yum install cactuscore-uhal-grammars cactuscore-uhal-uhal cactuscore-uhal-tests cactuscore-uhal-pycohal cactuscore-uhal-gui cactuscore-uhal-tools cactuscore-controlhub cactusboards-amc13-amc13 cactusboards-amc13-tools pugixml-devel
Install XDAQ
sudo yum group install cmsos_core cmsos_worksuite --skip-broken
Other packages
sudo yum install e2fsprogs-devel libuuid-devel curlpp curlpp-devel.x86_64 freetype freetype-devel xorg-x11-fonts-75dpi libuuid-devel libcurl-devel pugixml-devel boost boost-devel
Download POS and set environment
mkdir TriDAS_lea cd TriDAS_lea scl enable devtoolset-8 bash git clone https://gitlab.cern.ch/cmspops/pos.git pixel cd pixel git checkout master cd .. cp pixel/POSRelease/setenv.sh . cat > local.sh <<EOF export ROOTSYS=/home/cmspixel_centos7/internalhdd/ROOT/install export BUILD_HOME=/home/cmspixel_centos7/internalhdd/TriDAS_lea export POS_INSTALL_PATH=\$BUILD_HOME/local export POS_OUTPUT_DIRS=\$BUILD_HOME/pixel/PixelRun/Runs export POS_LOG_DIR=\$BUILD_HOME/pixel/PixelRun/Logs export PIXELCONFIGURATIONBASE=\$BUILD_HOME/Config EOF source setenv.sh
Download and compile FecSoftware
git clone https://gitlab.cern.ch/cmspos/FecSoftware.git FecSoftwareV3_0 cd FecSoftwareV3_0 make -j 8 make install
Compile POS
cd $BUILD_HOME/pixel make Set=pixel -j 8 make install cd $BUILD_HOME/pixel/PixelRun mkdir Logs Runs
Note: I encountered compilation errors and had to add the line:
#include <TSystem.h>
to these two header files:
TriDAS_lea/pixel/PixelUtilities/PixelRootUtilities/include/PixelHistoThreadFrame.h TriDAS_lea/pixel/PixelUtilities/PixelRootUtilities/include/PixelHistoThreadFrameWithArgs.h
get name of new network card
bash ifconfig -a
gives enp4s5 for this network card, yours could be different
create file
/etc/sysconfig/network-scripts/ifcfg-enp4s5 (choose the right name for your card)
with this content:
HWADDR=90:E2:BA:F7:6B:F7 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none DEFROUTE=no IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=no IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME="enp4s5" UUID=8c87de7c-ab31-3faa-8480-3c9571cad2af ONBOOT=yes AUTOCONNECT_PRIORITY=-999 IPADDR=192.168.0.1 PREFIX=23 GATEWAY=192.168.0.1
(change the HWADDR, the NAME and the UUID to fit your network card)
restart the network service
sudo systemctl restart network.service
check the ip address change
ifconfig -a
the network card should now have the ip address 192.168.0.1 with the netmask 255.255.254.0
install the dhcp daemon and wireshark
sudo yum install dhcpd wireshark
install the rarp daemon using the instructions from https://wiki.physik.uzh.ch/cms/nanocrate:nanocrate
bash #!/bin/bash sudo wget http://download-ib01.fedoraproject.org/pub/epel/6/x86_64/Packages/r/rarpd-ss981107-42.el6.x86_64.rpm sudo yum install rarpd-ss981107-42.el6.x86_64.rpm cat <<EOF > /tmp/rarpd.service [Unit] Description=Reverse Address Resolution Protocol Requests Server Documentation=man.rarpd(8) Requires=network.target After=network.target [Service] Type=forking User=root #EnvironmentFile=/etc/sysconfig/rarpd ExecStart=/usr/sbin/rarpd -a -e -v [Install] WantedBy=multi-user.target EOF sudo cp /tmp/rarpd.service /etc/systemd/system
restart daemons and rarpdaemon
sudo systemctl daemon-reload sudo systemctl restart rarpd
this script already is stored at ~/internalhdd/install_scripts/install_rarpd.sh
copy the /etc/hosts and the /etc/ethers files from the old mtca PC
/etc/hosts contains:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.0.41 mch 192.168.0.157 bpixamc13T1 192.168.0.156 bpixamc13T2 192.168.0.31 bpixtkfec 192.168.0.32 bpixpxfec 192.168.0.34 bpixfed1 192.168.0.35 bpixfed2 192.168.0.36 bpixfed3
only copy the lines starting with 192.168.0.
/etc/ethers contains:
# copied from old slc6 mtca PC # see man ethers for syntax # ETHERS for BPIX CRATE # ##################### 08:00:30:F3:01:d7 bpixamc13T1 08:00:30:F3:01:97 bpixamc13T2 08:00:30:00:23:31 bpixtkfec 08:00:30:00:22:f2 bpixpxfec 08:00:30:00:23:1e bpixfed1 08:00:30:00:23:34 bpixfed2 08:00:30:00:23:13 bpixfed4
copy all lines
try to ping the devices in the /etc/hosts file
ping mch ping bpixamc13T1 ping bpixamc13T2 ping bpixtkfec ping bpixpxfec ping bpixfed1 ping bpixfed2 ping bpixfed3