Compiling MarlinTPC

To compile MarlinTPC you need:

  • LCIO
  • GEAR (at least v00-09-pre2)
  • LCCD
  • CLHEP / HepPDT
  • GSL
  • raida (needs at least version v01-04, should also work with JAIDA/AIDAJNI.)
  • Marlin (at least version 00-09-08, compiled with GEAR, LCCD and CLHEP/HepPDT)
  • Minuit2 either stand alone or the version included in ROOT
  • ROOT (this dependency will be removed once the required functionality is implemented in RAIDA)

Compiling with GNUmakefiles is not supported any more, the GNUmakefiles have been removed from the trunk. The v00-02-xx branch still supports GNUmakefiles, but this installation method is deprecated. Please use cmake.

Compiling with cmake

  1. Go to the MarlinTPC root directory and create a directory named build. Change into this directory.
  2. Run cmake to create the Makefiles
    cmake -C /PATH/TO/YOUR/ILCSOFT/ILCSoft.cmake .. 
    /PATH/TO/YOUR/ILCSOFT is the path to your ilcsoft installation, for instance /usr/local/ilcsoft/v01-03 . There the cmake config file (ILCSoft.cmake) for ilcsoft is located and tells cmake all the required dependencies. Don't forget the two dots at the end of the command!
  3. run make
  4. set the MARLIN_DLL variable. You need the Minuit2 and the MarlinTPC library. Minuit2 has to be loaded before MarlinTPC. For instance in bash:
    export MARLIN_DLL="$ROOTSYS/lib/libMinuit2.so:$HOME/MarlinTPC/build/lib/libMarlinTPC.so"
    In this case Minuit2 from ROOT is used and MarlinTPC is located in your home directory. You can omit the path if it is in your LD_LIBRARY_PATH
  5. Run Marlin
    /usr/local/ilcsoft/v01-03/Marlin/v00-09-10/bin/Marlin myStreeringFile.xml

Recompiling with cmake
  • Repeat the steps B. and C. . In case of problems remove the build directory and repeat A. through C.

It is convenient to put /PATH/TO/MARLIN/bin and /PATH/TO/LCIO/bin to your $PATH shell variable and to set the $PATH and $MARLIN_DLL in your ~/.bashrc

Compiling with GNUmake files (deprecated)

  1. Make sure you have all required environment variables set correctly, e. g. $MARLIN, $LCIO etc.
  2. State
    make
    in the root of the MarlinTPC directory. You will get a MarlinTPC executable in the MarlinTPC/bin
  3. Run your local MarlinTPC binary:
    $HOME/MarlinTPC/bin/MarlinTPC myStreeringFile.xml

The binaries of the tools and examples are located in their respective directories.

  • validation/generateRawData/generateRawData
  • validation/generateRawData/generateRawData2
  • validation/TPCGEMSimInput/CreateMuonsLCIO
  • tools/BackgroundMerger/BackgroundMerger
They are LCIO standalone programs and do not provide Marlin processors.

BEWARE: The dependencies in the GNUMakefiles are not completely resolved. It is recommended to make clean and then recompile after each update!

-- MartinKillenberg - 04 Jun 2008

Edit | Attach | Watch | Print version | History: r11 < r10 < r9 < r8 < r7 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r11 - 2008-06-18 - MartinKillenberg
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    ILCTPC All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback