User Tools

Site Tools


itk:installing_software_for_use_with_rce_and_hsio-2

This is an old revision of the document!


Installing Software for Use with RCE and HSIO-2

Follow the setup instructions here. Be sure to extract and install everything in exactly the same directories as the tutorial, because some scripts use hard-coded paths!

Note the line

AYUM software installation location: /sw/atlas

The install location is NOT /sw/atlas/ayum.

The TDAQ framework does not need to be installed if you're installing RCF. The install command

./ayum install  -y LCG_81b_gcc_4.9.3_x86_64_slc6 gcc_4.9.3_x86_64-slc6 LCG_81b_ROOT_6.04.12_x86_64_slc6_gcc49_opt  Boost_1.59.0_python2.7_armv7l_archlinux_gcc52_opt_lcgcmt81b_armv7l_archlinux_gcc52_opt

sometimes runs into timeout issues while downloading files, but you can run it again after it finishes, and it'll just look for the missing pieces.

The make commands

cd ~/daq/rce/build.slc6-rcf; make
cd ~/daq/rce/build.arm-rcf; make

sometimes spit out errors such as

internal compiler error: Killed (program cc1plus)

This is because our lab computer is horrible and barely has any RAM. Just run the command again after it finishes and it'll go back to work on the parts that failed.

You don't need to edit /etc/hosts if your /etc/dhcp/dhcpd.conf file is set correctly. This automatically assigns IP addresses to external devices based on their MAC addresses. You can look at the leases created by DHCP in /var/lib/dhcpd/dhcpd.leases. This will tell you the IP address of the HSIO-2 board. You should be able to log on to the board using

ssh root@<IP>

If you get an error “No route to host”, this means you're using the wrong IP address.

Installing Python

https://github.com/h2oai/h2o-2/wiki/installing-python-2.7-on-centos-6.3.-follow-this-sequence-exactly-for-centos-machine-only

yum install -y centos-release-SCL yum install -y python27 which python

Following probably unimportant yum groups mark convert yum groups mark install “Development tools” yum install zlib-devel yum install bzip2-devel yum install openssl-devel yum install ncurses-devel yum install sqlite-devel cd /opt wget –no-check-certificate https://www.python.org/ftp/python/2.7.5/Python-2.7.5.tar.xz tar xf Python-2.7.5.tar.xz cd Python-2.7.5 ./configure –prefix=/usr/local make && make altinstall End unimportant

wget –no-check-certificate https://bootstrap.pypa.io/ez_setup.py sudo /usr/local/bin/python2.7 ez_setup.py sudo /usr/local/bin/easy_install-2.7 pip

yum install libffi-devel

sudo /usr/local/bin/easy_install-2.7 requests sudo /usr/local/bin/easy_install-2.7 psutil sudo /usr/local/bin/easy_install-2.7 paramiko

RCE Setup

We will be mostly following the steps on this page - https://twiki.cern.ch/twiki/bin/view/Atlas/RCEGen3Development. First, make sure your hardware is hooked up like shown in the first pictures on this page.

Become root by using the 'su' superuser command, then perform all of the following commands as root.

First, we configure a server on our local computer to communicate with RCE. This server will have NFS and DCHP. Get required packages.

yum install dhcp cmake pyparted lib

Disable firewall and SELinux (Linux security).

/sbin/chkconfig iptables off
/sbin/service iptables stop
vim /etc/sysconfig/selinux

Set “SELINUX=permissive”. Now we install the RCE SDK.

sudo mkdir /opt/AtlasRceSdk
cd /opt/AtlasRceSdk
wget -O - http://rceprojectportal.web.cern.ch/RceProjectPortal/software/SDK/V0.11.1.tar.gz | sudo tar xvfz -

Add the following command to your bash_profile file so that it runs every time you open the terminal.

source /opt/AtlasRceSdk/V0.11.1/setup.sh

Set up the DHCP server by editing /etc/dhcp/dhcpd.conf. Make sure it looks like the following:

default-lease-time 600;
max-lease-time 7200;
authoritative;
ddns-update-style none;

subnet 192.168.3.0 netmask 255.255.255.0 {
  option subnet-mask 255.255.255.0;
  option ntp-servers 192.168.3.1;
  option routers 192.168.3.1;
  option broadcast-address 192.168.3.255;
  range 192.168.3.2 192.168.3.254;
}

host hsio2 {
  option host-name "HSIO2";
  hardware ethernet 08:00:56:00:45:0a;
}

Start the DHCP server.

/sbin/chkconfig dhcpd on
/sbin/service dhcpd start

#Filesystem

Using RCE

BUILD LOCAL AND REMOTE SERVERS

yum install cmake  libXpm libX11 libXext libSM libICE python-devel rpm-devel
mkdir -p /sw/atlas
chmod a+w /sw/atlas
cd /sw/atlas
git clone  https://:@gitlab.cern.ch:8443/rce/ayum.git
cd /sw/atlas/ayum
./configure.ayum
AYUM package location: /sw/atlas/ayum
AYUM software installation location: /sw/atlas
AYUM RPM database location: [/sw/atlas/.rpmdb]
AYUM cache location: [/sw/atlas/.yumcache]
cd /sw/atlas/ayum/src/rpmext; make clean; make
cd ~/ayum
./ayum install  -y LCG_81b_gcc_4.9.3_x86_64_slc6 gcc_4.9.3_x86_64-slc6 LCG_81b_ROOT_6.04.12_x86_64_slc6_gcc49_opt  Boost_1.59.0_python2.7_armv7l_archlinux_gcc52_opt_lcgcmt81b_armv7l_archlinux_gcc52_opt
cd ~
git clone https://:@gitlab.cern.ch:8443/rce/pixelrce.git
ln -s ~/pixelrce ~/daq
cd ~/daq/rce
source ./scripts/setup-gen3.sh
git checkout -b V1.1.0
cd ~/daq/rce/build.slc6-rcf; make
cd ~/daq/rce/build.arm-rcf; make

INSTALLING AND RUNNING SERVERS

cd ~/daq/rce/
rsync -e 'ssh -l root' -rlptDv /sw/atlas/sw/lcg/LCG_81b/Boost/1.59.0_python2.7/armv7l-archlinux-gcc52-opt/lib 192.168.3.3:/root/pixelrce/ 
rsync -rlptDv -e 'ssh -l root' build.arm-rcf/{bin,lib} 192.168.3.3:/root/pixelrce
ssh [email protected]
export PATH=/root/pixelrce/bin:$PATH; export LD_LIBRARY_PATH=/root/pixelrce/lib:$LD_LIBRARY_PATH
calibserver
cd ~/daq/rce
source scripts/setup-gen3.sh
calibGui

Use Inlink X+1, Outlink X+1, where the module is plugged into port AX. Use Rce 0.

itk/installing_software_for_use_with_rce_and_hsio-2.1472079416.txt.gz · Last modified: 2016/08/24 22:56 by mazhang