This page provides information about the ROOT software installed on Linux systems at DESY Zeuthen. <> == News == === 2011-01-19 Version 5.28.00 available on SL5 === We're considering not rolling out 32bit builds in the future. If you still need those, please let us know. === 2010-02-12 Version 5.26.00 available on SL5 === We do not foresee to install this on SL4 anymore. === 2009-03-16 Version 5.22.00 available on SL5&4 === Since the ATLAS HLT machines are the last user nodes running SL4, only the 32-bit build is installed on this platform. === 2008-01-21 Version 5.18.00 available on SL5&4, 5.16.00 on SL4 === Cern's latest root productive version 5.18.00 is now available on all SL5 and SL4 nodes. In addition, we completed the overdue installation of 5.16.00 on SL4. === 2007-11-15: Version 5.16.00 available on SL5 === This actually happened a while ago already. There are no known issues. The html documentation has become so large that it's hardly feasible to install it generally. We recommend looking it up on root.cern.ch instead. Installing 5.16.00 on SL4 is on our list of things to do, but is unlikely to happen due to manpower constraints. === 2007-01-29: Version 5.14.00 to be installed === Cern's latest root productive version 5.14.00 is now available on all SL nodes. The "bulky" documentation can still be accessed at any SL3 32-Bit System. === 2006-12-11: Version 5.12.00 to be installed === Root 5.12.00 currently represents Cern`s newest productive version. At Dec 12 2006, root 5.12.00 will be installed on all SL3/SL4 32/64Bit systems. Besides the 32 Bit package, a 64-Bit root version (roo64 5.12.00) will also be available on all x86_64 SL3/SL4 nodes. At the moment, only SL3 32-Bit Systems will provide the bulky htmldoc 5.12.00 subpackage. '''Note: the generic interface through the TFile class seems to be fixed:''' {{{ TFile::Open("dcap:///acs/users/johndoe/Event.root") }}} === 2006-01-30: Version 5.08.00 to be installed tonight === The 32-bit version root-5.00.08-b.4 (upstream bugfix update b) will be installed on all 32-bit and 64-bit SL3 systems. In addition, the 64-bit version root64-5.00.08-b.4 will be installed on all x86_64 SL3 systems. The htmldoc subpackage will be installed alongside the native version for each platform. ==== Version 5.08.00 dCache issues ==== dCache read access was tested successfully on both architectures. However, the generic interface through the TFile class is broken. The following used to work with previous versions, but no longer does: {{{ TFile::Open("dcap:///acs/users/johndoe/Event.root") }}} This works: {{{ new TDCacheFile("/acs/users/johndoe/Event.root"); }}} And it is also possible to use the preload library: {{{ [host64] ~ % LD_PRELOAD=/opt/products/dcache/default/lib64/libpdcap.so \ > /opt/products/root64/5.08.00/bin/root ******************************************* * * * W E L C O M E to R O O T * * * * Version 5.08/00b 24 January 2006 * * * * You are welcome to visit our Web site * * http://root.cern.ch * * * ******************************************* FreeType Engine v2.1.9 used to render TrueType fonts. Compiled on 29 January 2006 for linuxx8664gcc with thread support. CINT/ROOT C/C++ Interpreter version 5.16.5, November 30 2005 Type ? for help. Commands must be C++ statements. Enclose multiple statements between { }. root [0] TFile::Open("/acs/users/johndoe/Event.root") (class TFile*)0x26089e0 root [1] }}} || Do '''''not''''' set LD_PRELOAD in your shell's dot-files. Never ever. || == Installed Versions == ROOT is installed from RPM packages, according to the /opt/products scheme. To query what is actually installed on a certain client, issue this command: {{{ ppm -q /root/ }}} The version marked ''default'' is the one which is used if the command `root` is executed under the default user environment. Some more information about a specific build is available by querying a certain package. Use commands like {{{ prpm -qi root-5.14.00 }}} These are the currently installed versions: || Version || Compilers || || 3.05.07 || 32- & 64-bit SL3, 32-bit gcc 2.95 || || 3.10.02 || 32- & 64-bit SL3 || || 4.00.08 || 32- & 64-bit SL3 || || 4.02.00 || 32- & 64-bit SL3 || || 5.08.00 || 32- & 64-bit SL3/4 || || 5.12.00 || 32- & 64-bit SL3/4 || || 5.14.00 || 32- & 64-bit SL3/4/5 || || 5.16.00 || 32- & 64-bit SL4/5 || || 5.18.00 || 32- & 64-bit SL4/5 || || 5.20.00 || 32- & 64-bit SL4/5 || || 5.22.00 || 32-bit SL4, 32- & 64-bit SL5 || || 5.26.00 || 32- & 64-bit SL5 || || 5.28.00 || 32- & 64-bit SL5 || Notice the 64-bit packages are called ''root64'' and consequently install into `/opt/products/root64` instead of `/opt/products/root`. This allows us to install the 32-bit packages on 64-bit systems, providing perfect runtime compatibility for 32-bit jobs on 64-bit farm nodes. Still, the library directory on 64-bit systems is '''.../lib64''' instead of .../lib . == Using a Specific Version == There are several options for achieving this. * The `ini` command is available to set up a number of environment variables such that a different version is used by default. || `ini` sets the `LD_LIBRARY_PATH` variable which can cause lots of problems. Do '''not''' use it in your shell's startup files. || * To use a different version of the interactive ROOT interpreter, simply call it with its full path: {{{ [host] ~ % /opt/products/root//bin/root }}} The executables and libraries have been built such that they know where to find the right shared libraries, without the evil LD_LIBRARY_PATH. * It is '''highly recommended''' that users apply the same technique when building their own applications against a certain ROOT version: * either, `export LD_RUN_PATH=/opt/products/root//lib` * or pass `-rpath /opt/products/root//lib` to the linker * use `g++ -Wl,-rpath,/opt/products/root//lib` if using the compiler to link the exetuable (which is the recommended way)