Design tools Visual Thought (getting started), Rational Rose (info)
Integrated Development Environment (IDE) We recommend Eclipse on all platforms (configuration)
Editor Emacs (getting started with LHCb emacs)
Code Management The LHCb software repository is in Gitlab (getting started)
Configuration Management CMake (LHCb FAQ)
Download and Setup Scripts See software environment tools TWiki.
C++ Compilers
See supported platforms
See also: ISO standard, C++ reference,
Debuggers See code analysis tools TWiki, or use an IDE (see above)
Code profiling and analysis See code analysis tools TWiki
Java SDK JDK-Sun 1.2.2, Jikes 1.10 (getting started)
Markup Language XML (getting started)
Scripting Language Python (getting started) (GaudiPython)
Libraries ROOT Mathematical Libraries, GSL, Boost, XERCES-C, VDT [legacy libraries: CLHEP, CERNLIB]
Documentation Manuals: Framemaker 6.0 (info)
Source Code: Doxygen (getting started)
Code search: glimpse. Use Lbglimpse command to run glimpse on a given LHCb software release
LaTeX template for LHCb notes


Many recommended books can be obtained from the CERN Computing BookShop in the CERN library.

The following books are used in LHCb to foster use of common notation etc. :

Book Author Description
Scientific and Engineering C++ Barton and Nackman For people wanting to learn C++
Large scale C++ Sware Design Lakos Physical design, packaging, releases...
The Inventor Mentor   Wernecke Introduction to Open Inventor
The Inventor Toolkit   Wernecke For adding to Inventor toolkit
Design Patterns   Gamma..... For design of object-oriented software
Object Solutions   Booch Managing OO projects
UML User Guide Booch, Rumbaugh,.. Design notation (UML) used by LHCb
Personal Software Process   Humphrey How to be a better software developer

Documentation guidelines and templates

N.B. Templates can usually be selected from within the application (Word or Framemaker)

  • LHCb Documentation Guidelines (html) - paper documents, email, news

  • LHCb Project Management Template (html, word) - information to be included in each project plan

  • User Requirements Document (URD) template (html, word)

  • LHCb Technical Note template (html, word, LateX)


Go to TOP of page

This page last updated on January 30, 2017