ROOT 5.30 from AFS on SLC5 64x - using csh

Hi,

I have a problem sourcing the env variables for ROOT 5.30 - gcc 4.3 - on SLC5 64x.

If I copy the two following lines in a terminal, it works ok:

source /afs/cern.ch/sw/lcg/external/gcc/4.3.2/x86_64-slc5/setup.csh
source /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/bin/thisroot.csh

If I copy the two lines above in a script (say script.csh) and do source script.csh it won’t source the variables.

If I have a script containing the following lines instead:
setenv ROOTSYS /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root

setenv PATH $ROOTSYS/bin/:$PATH

if($?LD_LIBRARY_PATH) then
setenv LD_LIBRARY_PATH $ROOTSYS/lib:$LD_LIBRARY_PATH
else
setenv LD_LIBRARY_PATH $ROOTSYS/lib
endif
and source that script, it does not complain but calling root it send me this error:
/afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/bin/root.exe: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.9' not found (required by /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/lib/libCore.so) /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/bin/root.exe: /usr/lib64/libstdc++.so.6: versionGLIBCXX_3.4.9’ not found (required by /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/lib/libCint.so)
/afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/bin/root.exe: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.9' not found (required by /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/lib/libMathCore.so) /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/bin/root.exe: /usr/lib64/libstdc++.so.6: versionGLIBCXX_3.4.9’ not found (required by /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root/lib/libRint.so)

I am on a standard CERN SLC5 64x computer.

Obviously there is something I do wrong but I cannot figure out what.

Many thanks,

Gersende

Hi Gersende,

You also have to setup the environment for gcc:

[code]

setup gcc environment:

set gcc_config_version = 4.3.2
set mpfr_config_version = 2.3.1
set gmp_config_version=4.2.2
set LCGPLAT = x86_64-slc5-gcc34-opt
set LCG_lib_name = lib64

if ( $1 == “” ) then
set LCG_contdir = /afs/cern.ch/sw/lcg/contrib
else
set LCG_contdir = "$1"
endif

set LCG_gcc_home = ${LCG_contdir}/gcc/${gcc_config_version}/${LCGPLAT}
set LCG_mpfr_home = ${LCG_contdir}/mpfr/${mpfr_config_version}/${LCGPLAT}
set LCG_gmp_home=${LCG_contdir}/gmp/${gmp_config_version}/${LCGPLAT}

setenv PATH ${LCG_gcc_home}/bin:${PATH}

if ($?LD_LIBRARY_PATH) then
setenv LD_LIBRARY_PATH ${LCG_gcc_home}/${LCG_lib_name}:${LCG_mpfr_home}/lib:${LCG_gmp_home}/lib:${LD_LIBRARY_PATH}
else
setenv LD_LIBRARY_PATH ${LCG_gcc_home}/${LCG_lib_name}:${LCG_mpfr_home}/lib:${LCG_gmp_home}/lib
endif

setup ROOT environment:

if ($?ROOTSYS) then
setenv OLD_ROOTSYS "$ROOTSYS"
endif

setenv ROOTSYS /afs/cern.ch/sw/lcg/app/releases/ROOT/5.30.00/x86_64-slc5-gcc43-opt/root

setenv PATH $ROOTSYS/bin/:$PATH

if($?LD_LIBRARY_PATH) then
setenv LD_LIBRARY_PATH $ROOTSYS/lib:$LD_LIBRARY_PATH
else
setenv LD_LIBRARY_PATH $ROOTSYS/lib
endif
[/code]This should work.

Cheers, Bertrand.