Installing SNOMAN and QSNO at Carleton

If you want to see Alain's older version of this document go to "Carleton SNOMAN/QSNO Help"

If you want to see Carleton specific instructions for installing QSNO alone go to "Carleton QSNO Help"



These instructions assume CERNLIB and ROOT are installed on the system.
Make sure that is the case if you are installing SNOMAN and QSNO on your own laptop.
Replace "dwaller" with your username.

1) Modify  .cshrc to add:
 
    # to use DaKeg
    if ( -e /local/sge/keg/common/settings.csh) then
        source /local/sge/keg/common/settings.csh
    endif
    # to use "pro" version of SNO software
    if ( -e /home/dwaller/bin/test_sno_setup_pro.csh) then
        source /home/dwaller/bin/test_sno_setup_pro.csh
    endif

2) Ensure that /usr/bin is just after . in the paths set in ~/.cshrc to
    get the g++ compiler version 2.96 instead of 3.0.  ROOT and all other software are
    compiled under 2.96. Test which version of g++ you are using by typing:

    >g++ --version

3) If you haven't already done so, create /home/dwaller/bin/test_sno_setup_sno.csh
    that looks like the following:

    #!/bin/csh
    setenv HISTO_DIR  ""
    setenv MAKE make
    setenv CERNDIR /local/cern/pro/lib
    setenv CDSERV /data/data001/hepdb/cdsno
    setenv SNO_ROOT /data/data002/dwaller/sno
    setenv SNO_TOOLS $SNO_ROOT/snoman/tools/exe
    setenv SNODB_ROOT /data/data001/hepdb/cdsno
    setenv SNODB_VER 4_00
    setenv SNO_SNOMAN_VER "4_0280"
    setenv SNO_CODE $SNO_ROOT/snoman/"$SNO_SNOMAN_VER"/code
    setenv ROOTSYS $SNO_ROOT/root
    setenv QSNO_ROOT $SNO_ROOT/qsno/qsno_017.1
    setenv PATH
    {$QSNO_ROOT}/bin:{$QSNO_ROOT}/scripts:{$QSNO_ROOT}/parameters:{$ROOTSYS}/bin:{$PATH}
    setenv QPHYSICS ${QSNO_ROOT}/qphysics
    if ({$?LD_LIBRARY_PATH}) then
        setenv LD_LIBRARY_PATH {$QSNO_ROOT}/lib:{$ROOTSYS}/lib:{$LD_LIBRARY_PATH}
    else
        setenv LD_LIBRARY_PATH {$QSNO_ROOT}/lib:{$ROOTSYS}/lib
    endif

    Make sure that all the environment variables point in the right direction.
    Source it after you create it. In future it will be sourced from .cshrc when you log in.

4) Create the following directories:

    $SNO_ROOT/snoman
    $SNO_ROOT/qsno

5) obtain the needed gzipped tar files, for example see /data/data002/dwaller/sno/tar:
    (a) 4_0280.tar.gz
    (b) tools_exe.tar.gz
    (c) qsno_017.1.tar.gz
    (d) extract.tar.gz

6) gunzip the *.gz files listed in 5) then from the following directories, "tar -xvf" the following files (in the tar directory):

    --> tools_exe.tar in $SNO_ROOT/snoman -> creates directory tools/exe/
    --> 4_0280.tar in $SNO_ROOT/snoman -> creates directory 4_0280
    --> qsno_017.1.tar  in $SNO_ROOT/qsno -> creates a directory qsno_017.1

7) Make directory $SNO_ROOT/snoman/tools/extract then

       cd $SNO_ROOT/snoman/tools/extract

    and

        tar -xvf  /data/data002/dwaller/sno/tar/extract.tar

     This DOESN'T create a directory

8) Update $SNO_TOOLS/get_lhost_info.scr as follows:

setenv SNO_DEBUG "NO"

setenv SNO_EXTERNAL_LIBRARIES " \
    -L/usr/X11R6/lib -lXm -lXmu -lXt -lX11 \
    -lm -lc -lrt \
    $CERNDIR/liblepto.a\
    $CERNDIR/libjetset74.a\
    $CERNDIR/libpdflib804.a\
    $CERNDIR/libgraflib.a \
    $CERNDIR/libgrafX11.a \
    $CERNDIR/libpacklib.a \
    $CERNDIR/libmathlib.a \
    $CERNDIR/libkernlib.a \
    $CERNDIR/libpawlib.a \
    /usr/lib/libnsl.a \
    -lX11 "

setenv SNO_PLATFORM "LINUX"
setenv SNO_SNOMAN_EXTRACT_SW "CPP_CODE,NO_DISCON_ECA,NO_DISCON_PCA,NO_DISCON_OC"

*** make sure there is a [return] after last line!!! For some reason this is required or else NO_SNOMAN_EXTRACT_SW doesn't get set!!! *****

9) Source $SNO_TOOLS/get_lhost_info.scr

10) Execute $SNO_TOOLS/install_extract.scr and follow the instructions given in the output:

            cp $SNO_ROOT/snoman/tools/extract/extract.exe $SNO_TOOLS

11) Execute $SNO_TOOLS/install_snoman.scr

12) Hopefully you get the following messages:

        SNOMAN linked successfully.
        link_snoman complete
        install_snoman complete

    If so, it worked!!! The executable verion of SNOMAN should now be

        $SNO_CODE/snoman.exe

13) Still need to make some stuff in $QSNO_ROOT/bin. Do this by changing directory to $QSNO_ROOT and typing

         ./install_qsno

    Besides making snomanpp, and other things, this makes a version of root which includes qoca and other libraries.

14) If you compiled QSNO only this time, make sure you relink SNOMAN so that snoman.exe includes the updated
       QSNO routines. Re-link SNOMAN with $SNO_TOOLS/link_snoman.scr.



Last updated by David Waller on April 9, 2003. These instructions are based on Alain Bellerive's and Etienne Rollin's  instructions.