Difference: LHCbSLCOnDebian (37 vs. 38)

Revision 382012-06-08 - MarcoClemencic

Line: 1 to 1
 
META TOPICPARENT name="LHCbSoftOnNonSupportedPlatforms"

Installing the LHCb Software on Ubuntu (and Debian)

Line: 9 to 9
  Packages of CERN software residing in the CERN package repository can be found here.
Changed:
<
<

Getting Ubuntu

>
>

System Installation and Tuning

In the following sections it is explained how to install Ubuntu and tune the installation in useful ways.

Getting Ubuntu

 
  • Everything below works on 9.04 (and can upgrade flawlessly; but you do need to repeat the AFS step below).
  • The smoothest way to install is simply to use the "Desktop" edition
  • For LVM-s and funny hardware, choose the "Alternate" installation image. If you like KDE, you can do sudo aptitude install kubuntu-desktop, even if you didn't use Kubuntu install media
  • When setting mirror for package sources, take care not to push "Select best mirror" button within CERN network, since it triggers ICMP traffic exceeding the CERN sec. policy threshold.
  • make sure, that your system is up-to-date by typing: sudo aptitude update and sudo aptitude dist-upgrade or sudo aptitude safe-upgrade
Changed:
<
<

Installing "NICE" Alerter (RSS notifier)

>
>

Installing "NICE" Alerter (RSS notifier)

 
  • sudo aptitude install liferea and add a new feed http://cernalerts.web.cern.ch/cernalerts/alerts.aspx. Adding the feed reader in System->Settings->Sessions will launch it upon login.
Changed:
<
<

Installing ROOT (properly)

>
>

Installing ROOT (properly)

Note: this is not strictly needed because we distribute all the required special libraries in our software kits.
 
  • ROOT has become part of Debian as of Lenny. Look for packages root-system (~-common and all other libraries, modules, plugins etc. )
Changed:
<
<

Installing CLHEP and others (properly)

>
>

Installing CLHEP and others (properly)

Note: this is not strictly needed because we distribute all the required special libraries in our software kits.
 
Changed:
<
<

Installing required packages

>
>

Installing required packages

 
  • sudo aptitude install cvs build-essential krb5-clients openafs-client openafs-modules-source module-assistant openafs-krb5 krb5-auth-dialog libmotif3 libmotif-dev xnest. Our AFS Cell and Kerberos server is cern.ch # => generate /afs dynamic => yes (but it will show up in the configuration tool...). If you think you made an error don't worry, you can always run sudo dpkg-reconfigure openafs-client later on. Optionally you can sudo cp /afs/cern.ch/common/CellServDB /etc/openafs/
Line: 33 to 38
 
  • restart OpenAFS: sudo /etc/init.d/openafs-client force-start
  • and maybe you might also want to install a nice development environment (apart from emacs and vim sudo aptitude install eclipse eclipse-cdt svn meld kompare maxima koctave libgnome-vfs-common sshfs openjdk-6-jre gnash gnome-do gnome-do-plugin* valgrind alleyoop kcachegrind etc. feel free to browse "System->Administration->Synaptic" and "Applications->Add/Remove...". Optionally Oracle for Ubuntu is available for local installation (though the LCG on AFS also works fine). I suggest using Eclipse with Open Java 6, it is much faster than gcj (look inside the file /etc/eclipse/java_home and add the line /usr/lib/jvm/java-6-openjdk if needed).
Changed:
<
<

CERN issued multimedia keyboards

>
>

CERN issued multimedia keyboards

 
  • sudo aptitude install keytouch keytouch-data keytouch-editor helps to bind special keys.
Changed:
<
<

Using CMT

>
>

Using CMT

 
  • after having installed everything above, you can authenticate yourself to access your AFS directories: klog.afs cernUsername@cern.ch
  • save your current PATH entries to SAVEPATH, because CMT scripts will overwrite it...
  • now you can source the appropriate scripts (CMT.[c]sh likes to set gcc433-5ubuntu4 in CMTCONFIG), so take care to set CMTCONFIG before and after CMT.[c]sh:
Line: 55 to 60
  $(MAKE) $* -C cmt
Changed:
<
<

Vim with LHCb coding conventions

>
>

Vim with LHCb coding conventions

  You might want to add the following lines to your ~/.vimrc:
set showfulltag
Line: 70 to 75
 set number
Changed:
<
<

Accessing CASTOR

>
>

Accessing CASTOR

 You might also like to try to also mount CASTOR via fuse CastorFS.
Changed:
<
<

Printing

>
>

Printing

 
CERN documentation

Select Administration-->

Printing and select add new printer. Choose Network: Unix Printer (LPD/LPR Host or Printer).
Line: 81 to 86
 
  • Enter the Queue name, using the normal DNS name BUT also without the letter B ex. "B2-cor" must be entered as 2-cor
  • Select the correct manufacturer and printer model or family ex. "HP" and HP LaserJet 8150 Series Postscript (recommended), click on "Add" and "Continue"
Changed:
<
<

Backup, restore

>
>

Backup, restore

 To backup your data, you might like flyback. For your package selection, type sudo dpkg --get-selections > /tmp/dpkglist.txt and after you have made a clean install (for whatever reason), you can type sudo dpkg --set-selections < /tmp/dpkglist.txt, then sudo apt-get -y update and finally sudo apt-get dselect-upgrade to restore your package selection.
Added:
>
>

Installing and Using LHCb Software

LHCb precompiled software can work on Ubuntu, but a few special actions are needed. (the following instructions have been tested on (K)Ubuntu 12.04)

First follow the installation instructions at SoftwareInstallation, but set CMTCONFIG to x86_64-slc5-gcc46-opt, if the application you want to install has been built on gcc 4.6 (Panoramix, for example, does not have a gcc 4.6 build).

This is usually enough to be able to run applications, but if you want to compile, you have to follow the following steps:

  • remove the directory $MYSITEROOT/lcg/external/gcc
    gcc 4.3 cannot understand some system headers present on recent platforms (gcc >= 4.4), so it is better to use the system compiler
  • install the version of gccxml from Ubuntu (the version of gccxml we distribute does not understand the headers too)
    sudo apt-get install gccxml
  • create the directory $MYSITEROOT/cmtusercontext and create inside it a file called requirements with this content:
    macro_remove cpp_name "lcg-"
    macro_remove cpp_name "-$(gcc_config_version)"
    macro GCCXML_home "/usr"
    
  • create the file $MYSITEROOT/MyLbLogin.sh, in which you should put something like this:
    msr=/path/to/my/siteroot
    export CMTUSERCONTEXT=$msr/cmtusercontext
    . $msr/LbLogin.sh -c x86_64-slc5-gcc46-opt
    
    where, of course, you replaced /path/to/my/siteroot with the path you used to set $MYSITEROOT, and the argument to LbLogin with the CMTCONFIG you actually used.
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback