ALICE
Forward Detectors: T0, V0 and FMD

Front-End Electronics: Software

Script Helper installation script
Developed at NBI Developed elsewhere in ALICE
Rcu++ RCU Abstraction layer FeeServer Front End Server
RcuDb RCU Database client FeeClient Front End Client
RcuConf RCU Configurator InterCom Layer Intercom Layer
RcuIcl RCU InterCom server RcuFw RCU Firmware
Pvss-Rcu++ Rcu++ control script plugin for PVSS II 3rd Party Packages
RcuGsl RCU Histogramming and Fitting based on GSL bwidget BWidget (Needed by DATE)
ReadRaw Read Raw DATE Data mysqltcl MySQL TCL interface (Needed by DATE)
FmdDa FMD DAQ Detector Algorithms dim DIM (Needed by DATE)
altro USB To Front-End smixx SMI++ (Needed by DATE)
altrocc RCU Instruction Compiler ace ACE (Needed by InterComLayer)
RcuData RCU Data Manipulators boost Boost (Needed by InterComLayer)
RcuGui RCU GUIs arm-uclibc-toolchain Linux ucLibc Toolchain
Fmd++ FMD Data manipulators and GUIs Examples and such.
FeeServer++ FeeServer implmented in C++ FmdFsm An Example FSM for FMD
Dcsc DCS card message buffer interface as a stand-alone library
RcuCE FeeServer Control Engine for the RCU, which used the DCS card message buffer interface. Note, that this requires the C++ version of the FeeServer
RcuConfEdit A Gtk GUI RCU Configuration database editor.
Fmdda (Bundled) Make RPM of all code needed for the FMD DA.
FmdFeeServer FMD feeserver
Miniconf Daemon and utility to configure front-end electronics in the DCS network
Pedconf Daemon and utility to upload pedestals to the front-end electronics in the DAQ network
How to make RPMs

Installation script

The script install_hehi_fee.sh will install some of the below packages. Note, that the script is not meant to replace a proper package management system like RPM or APT. Most of the packages can be made into RPMs and DEBs directly by simply doing one of

  make rpm 
  make deb

For most packages, RPMs can be build directly from the sources, by doing

  rpmbuild -ta <package>-<version>.tar.gz

How to make RPMs

Follow these simple steps.

  1. First, you need to check out the sources to your work machine. Suppose you're working on Rcu++, you do
          $ export CVS_RSH=ssh
          $ cvs -d :ext:username@himac02.nbi.dk:/home/hehi/hehi/fmd/cvs co rcuxx
        
  2. You need to boot-strap the build system. Do
          $ autoreconf -i -f 
        
  3. Next, you do the changes you need to do.
  4. You should then increment the release number in support/package.spec.in. If you need to make a new version increment the minor version number in configure.ac.
  5. Then, you need to make sure that the distribution is sane. You should do
          $ make distcheck
        
    If this fails, go back and make sure everything is in order.
  6. Next, you should copy the distribution package-version.tar.gz to you DFS area at CERN. You can open a web-page at
           https://dfs.cern.ch/dfs/Users/initial/username/
        
    where initial is the first letter of your username. You can also use Nautilus to browse the DFS exported file system
          $ nautilus davs://dfs.cern.ch/dfs/Users/initial/username/
        
    In both cases you will be prompted for a username and a password.
  7. Once copied to CERN, you need to copy the tar-ball to the Linux DCS worker node. Open a terminal client connecting to cernts.cern.ch (if outside CERN) or directly to the DCS gateway alidcscom001.cern.ch. For example:
          $ rdesktop cernts.cern.ch 
        
  8. When locked into the gateway, open a command prompt by selecting Run... from the start menu, and type in cmd.
  9. In the command prompt, change directory to your DFS directory
          > G: 
          > cd \Users\initial\username
        
    From there, you should start Psftp and log into the Linux worker node
          > "c:\Program Files\putty\psftp.exe" -l fmd -pw password alifmdwn002
        
  10. In the FTP session, use normal FTP commands, like put, get, mput, mget, ls, lpwd, lcd, cd, and so on. Put the distribution you just uploaded onto the worker node in the ~/tar directory
          psftp> cd tar
          psftp> put package-version.tar.gz
          psftp> exit
        
  11. From the gateway, use PuTTY to log into the Linux worker node alifmdwn002. Once in, change directory to ~/tar.
  12. In that directory is a script, build_rpms. Execute that with the packages you want to built as arguments e.g.:
          $ ./build_rpms rcuxx rcudata rcugui fmdxx
        
    Note, that each package will be built and installed completely before moving on to the next package. Therefore the order in which you list the packages is important. The most dependent should be last.
  13. That is it.

Back to FEE pages

Last modified 11:16:21 07/21/11 CEST Webmaster: Hosted by HEHI