ROOT 5.28.00 build qualified success, problem report

From: Konstantin Olchanski <olchansk_at_triumf.ca>
Date: Fri, 11 Feb 2011 19:24:20 -0800

Hi, guys, I am happy to report that I was able to build both 64-bit and 32-bit flavours of ROOT 2.28.00 from svn sources on a 64-bit SL5.5 machine.

In the past, cross-compilation of 32-bit ROOT on a 64-bit machine was problematic, but for several ROOT releases now, it works without problems: first you do "setarch i386" (this opens a new shell in which "uname -m" reports a 32-bit machine), the run "configure linux", and "make" - as usual.

One problem I ran into and I would like to report it here.

If I run "configure", then "make", the build fails with an error about not being able to find the xrootd libraries.

Examination shows that the xrootd configure script was not executed and nothing at all was built in the xrootd directories.

This is strange, because config.log reports that xrootd is enabled.

Luckily search of ROOT forum for "xrootd" finds the magic incantation for forcing a build of xrootd: "make distclean-xrootd; make all-xrootd". Observe where this is added to my build script.

I use this script to build ROOT. For 32-bit cross-compilation, run "setarch i386" before running this script.

#!/bin/sh

export ROOTSYS=$PWD
echo ROOTSYS=$ROOTSYS

OPTCERN="--enable-cern --with-cern-libdir=/triumfcs/linux/cern/i386_redhat90/2003/lib" OPTDCAP32="--enable-dcache --with-dcap-incdir=/triumfcs/linux/dcache-client/dcache_1.7.0-39_i386/dcap/include --with-dcap-libdir=/triumfcs/linux/dcache-client/dcache_1.7.0-39_i386/dcap/lib" OPTDCAP64="--enable-dcache --with-dcap-incdir=/triumfcs/linux/dcache-client/dcache_1.7.0-39_x86_64/dcap/include --with-dcap-libdir=/triumfcs/linux/dcache-client/dcache_1.7.0-39_x86_64/dcap/lib" OPT32="$OPTCERN $OPTDCAP32"
OPT64="$OPTDCAP64"
case `uname -m` in
x86_64)

    OPT=$OPT64
    ;;
*)

    OPT="linux $OPT32"
    ;;
esac
CONFIGURE="./configure $OPT --enable-xml --enable-roofit --enable-minuit2 --enable-mysql --enable-pgsql --enable-rpath --enable-xrootd" echo $CONFIGURE
$CONFIGURE
make clean
make distclean

find . -name '*.a' -exec /bin/rm -vf {} \;
find . -name '*.so' -exec /bin/rm -vf {} \;
find . -name '*.so.*' -exec /bin/rm -vf {} \;
make distclean-xrootd
make all-xrootd
make -j3      OPTFLAGS="-O2 -g"
make          OPTFLAGS="-O2 -g"
make static   OPTFLAGS="-O2 -g"
make cintdlls OPTFLAGS="-O2 -g"
make install  OPTFLAGS="-O2 -g"

#make redhat OPTFLAGS="-O2 -g"

#end

-- 
Konstantin Olchanski
Data Acquisition Systems: The Bytes Must Flow!
Email: olchansk-at-triumf-dot-ca
Snail mail: 4004 Wesbrook Mall, TRIUMF, Vancouver, B.C., V6T 2A3, Canada
Received on Sat Feb 12 2011 - 04:24:28 CET

This archive was generated by hypermail 2.2.0 : Sat Feb 12 2011 - 11:50:01 CET