User Tools

Site Tools


itk:installing_software_for_use_with_rce_and_hsio-2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
itk:installing_software_for_use_with_rce_and_hsio-2 [2016/06/01 21:36]
mazhang
itk:installing_software_for_use_with_rce_and_hsio-2 [2016/08/24 23:12] (current)
mazhang [Setting Up RCE Pixel Application]
Line 1: Line 1:
 ====== Installing Software for Use with RCE and HSIO-2 ====== ====== Installing Software for Use with RCE and HSIO-2 ======
 +====== Installing Python ======
  
-Follow the setup instructions [[https://twiki.cern.ch/twiki/bin/view/Atlas/RCEGen3PixelApplication|here]]Be sure to extract and install everything in exactly the same directories as the tutorial, because some scripts use hard-coded paths!+Following https://github.com/h2oai/h2o-2/wiki/installing-python-2.7-on-centos-6.3.-follow-this-sequence-exactly-for-centos-machine-only
  
-Note the line "AYUM software installation location: /sw/atlas". The install location is NOT /sw/atlas/ayum.+ yum install -y centos-release-SCL 
 + yum install -y python27 
 + which python
  
-The TDAQ framework does not need to be installed if you're installing RCF. The install command +Following probably unimportant
-<code>./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</code> +
-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 + yum groups mark convert 
-<code>cd ~/daq/rce/build.slc6-rcf; make + yum groups mark install "Development tools" 
-cd ~/daq/rce/build.arm-rcf; make</code> + 
-sometimes spit out errors such as "internal compiler errorKilled (program cc1plus)". This is because our lab computer is horrible and barely has any RAMJust run the command again after it finishes and it'll go back to work on the parts that failed.+ 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 
 + 
 + 
 +====== Server 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 
 + 
 +====== Setting Up RCE Pixel Application ====== 
 + 
 +Following the setup instructions [[https://twiki.cern.ch/twiki/bin/view/Atlas/RCEGen3PixelApplication|here]]. Be sure to extract and install everything in exactly the same directories as listed below, because some scripts use hard-coded paths! 
 + 
 +The pixel application has two parts - calibserver, which runs on the HSIO-2, and calibGui, which is run locally and used to interface with calibserver. 
 + 
 +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 
 +<code>ssh root@<IP></code> 
 +If you get an error "No route to host", this means you're using the wrong IP address. 
 + 
 +Execute all the commands in this section as superuser: 
 + 
 + 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 
 + 
 +Enter the following information: 
 + 
 + 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] 
 + 
 +Keep executing commands: 
 + 
 + 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 
 + 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 
 + 
 +You can ssh into the HSIO-2 to run calibserver. This is not necessary unless you want to see real-time outputs from the server. 
 + 
 + ssh [email protected] 
 + export PATH=/root/pixelrce/bin:$PATH; export LD_LIBRARY_PATH=/root/pixelrce/lib:$LD_LIBRARY_PATH 
 + calibserver 
 + 
 +In another window, run calibGui on the local computer. 
 + 
 + 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.1464816977.txt.gz · Last modified: 2016/06/01 21:36 by mazhang