Overview

To install ROOT with Qt-layer one has to

Install Qt and ROOT frameworks


Install Qt ROOT layer and Qt Extensions

To add the Qt-layer to your existent X11-version of ROOT you need 3 components:

and a few simple (for those familiar with the plain ROOT installation process) steps :

  1. Install Qt (version 3.2 and higher built with no XFT support)
  2. Note: Skip this step if you want to add the "Qt layer" and "Qt extension" to your existent ROOT installation.
    Download and install the fresh ROOT version:
       
                svn co http://root.cern.ch/svn/root/tags/v5-18-00 root      
               
    NOTE: OpenGL (qtgl) plug-in of the Qt-extension requires the optional ROOT "table" package to be installed as well. Make sure the "table" package libTable.so shared library is present under $ROOTSYS/lib. To install the "table" one has to install ROOT with "--enable-table" configuration option applied:
       
               ./configure ... --enable-table ... 
               
  3. Login BNL CVS server.
    Make sure you know the anonymous username/password combination.
               cvs -d :pserver:cvsuser@cvs.bnl.gov:/data01/CVS login
               
  4. Download the Qt-layer from either CVS repository
       
               cvs -d :pserver:cvsuser@cvs.bnl.gov:/data01/CVS co -Pd qtRoot root
               
    or the tar-ball
                         
               wget http://root.bnl.gov/QtRoot/downloads/qtFullRoot.tar.gz
               

  5. Check that you have installed and set your local Qt packages properly.
    Make sure QTDIR env variable is provided

  6. Option. If you want Coin3D viewer support then make sure IVROOT env variable is provided

  7. Now you are ready to install ROOT with the Qt-layer.
    There is an addition step for Mac Os users with non-X11 version of Qt4. They should set the QMAKESPEC environment variable first as follows:
       
              export QMAKESPEC=macx-g++
             

    To adjust the brand new ROOT version do:

       
              cvs -d :pserver:cvsuser@cvs.bnl.gov:/data01/CVS co -Pd qtRoot root
              cd qtRoot
              # define where you want to install the Qt components
              
              export QTROOTSYSDIR=`pwd`/qtrootsys
              
              # you may want to add Qt components into your ROOT installation
              # directly. In this case replace "qtrootsys" directory 
              # name with $ROOTSYS
              # -- For example:
              # -- export QTROOTSYSDIR=$ROOTSYS
    
              qmake          # Do not mess QMAKE with GMAKE. 
                             # At this point you need QMAKE
              
              # use > qmake "CONFIG+=debug" # if you want to install the Qt components
                                          # with the debug information attached
              make install 
              
              # Note:  Please disregard the warning messages:
              #       "WARNING: Failure to find: ${QMAKE_TARGET}Dict.cxx"
    
              ls  ${QTROOTSYSDIR}
              
              # clean the redundant files
              
               make distclean
               
             


    Make sure
    Gui.Backend resource selects "qt" interface. Edit $ROOTSYS/etc/system.rootrc file as needed or just copy the custom ".rootrc" file in to your working or home directory.

    Make sure your LD_LIBRARY_PATH (on UNIX) or PATH (on Windows) contains the new born library / DLL directory (if your $QTROOTSYSDIR != $ROOTSYS ).You need something like:

              setenv LD_LIBRARY_PATH $QTROOTSYSDIR/lib:$LD_LIBRARY_PATH
                

  8. How to test your installation?
    One can test the bran-new Qt/Root interface by installing a bunch of HelloWord-like applications.
       
              cd qtExample
              qmake          # Do not mess QMAKE with GMAKE. 
                             # At this point you need QMAKE
              
              # use > qmake "CONFIG+=debug" # if you want to install the Qt components
                                          # with the debug information attached
              make
             

Known problem:

  • Read my README
  • Try ROOT then and let me know what are you thinking.
  • You are -th visitors since December 22, 2006