Hi,
While we have been using the AFS build of ROOT 5.30 successfully with the DPM rfio library, this is not possible with ROOT 5.32 or following due to the CASTOR library dependency. Therefore, re-building ROOT without CASTOR and with DPM rfio seems like a hopeful way forward.
Working on a
Linux atlas073 2.6.18-308.8.2.el5 #1 SMP Wed Jun 13 11:07:54 CEST 2012 x86_64 x86_64 x86_64 GNU/Linux
Scientific Linux CERN SLC release 5.8 (Boron)
The setup used for the AFS build of 5.34
/afs/cern.ch/sw/lcg/app/releases/ROOT/5.34.00/x86_64-slc5-gcc43-opt/root
was used as a starting point,
]$ root-config --config | tr ' ' '\n'
--fail-on-missing
--enable-builtin-pcre
--enable-cintex
--enable-explicitlink
--enable-gdml
--enable-genvector
--enable-krb5
--enable-mathmore
--enable-minuit2
--enable-mysql
--enable-oracle
--enable-python
--enable-qt
--enable-qtgsi
--enable-reflex
--enable-roofit
--enable-table
--enable-unuran
--with-cint-maxstruct=36000
--with-cint-maxtypedef=36000
--with-cint-longline=4096
--with-castor-incdir=/afs/cern.ch/sw/lcg/external/castor/2.1.9-9/x86_64-slc5-gcc43-opt/usr/include/shift
--with-castor-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.9-9/x86_64-slc5-gcc43-opt/usr/lib64
--with-cern-libdir=/afs/cern.ch/sw/lcg/external/cernlib/2006a/x86_64-slc5-gcc43-opt/lib
--with-dcap-libdir=/afs/cern.ch/sw/lcg/external/dcache_client/2.47.5-0/x86_64-slc5-gcc43-opt/dcap/lib
--with-dcap-incdir=/afs/cern.ch/sw/lcg/external/dcache_client/2.47.5-0/x86_64-slc5-gcc43-opt/dcap/include
--with-fftw3-incdir=/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/x86_64-slc5-gcc43-opt/include
--with-fftw3-libdir=/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/x86_64-slc5-gcc43-opt/lib
--with-gccxml=/afs/cern.ch/sw/lcg/external/gccxml/0.9.0_20110825/x86_64-slc5-gcc43-opt/bin
--with-gfal-libdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-2/x86_64-slc5-gcc43-opt/lib
--with-gfal-incdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-2/x86_64-slc5-gcc43-opt/include
--with-gsl-incdir=/afs/cern.ch/sw/lcg/external/GSL/1.10/x86_64-slc5-gcc43-opt/include
--with-gsl-libdir=/afs/cern.ch/sw/lcg/external/GSL/1.10/x86_64-slc5-gcc43-opt/lib
--with-mysql-incdir=/afs/cern.ch/sw/lcg/external/mysql/5.5.14/x86_64-slc5-gcc43-opt/include
--with-mysql-libdir=/afs/cern.ch/sw/lcg/external/mysql/5.5.14/x86_64-slc5-gcc43-opt/lib
--with-oracle-incdir=/afs/cern.ch/sw/lcg/external/oracle/11.2.0.1.0p3/x86_64-slc5-gcc43-opt/include
--with-oracle-libdir=/afs/cern.ch/sw/lcg/external/oracle/11.2.0.1.0p3/x86_64-slc5-gcc43-opt/lib
--with-rfio-incdir=/afs/cern.ch/sw/lcg/external/castor/2.1.9-9/x86_64-slc5-gcc43-opt/usr/include/shift
--with-rfio-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.9-9/x86_64-slc5-gcc43-opt/usr/lib64
--with-pythia6-libdir=/afs/cern.ch/sw/lcg/external/MCGenerators/pythia6/426.2/x86_64-slc5-gcc43-opt/lib
--with-pythia8-incdir=/afs/cern.ch/sw/lcg/external/MCGenerators/pythia8/160/x86_64-slc5-gcc43-opt/include
--with-pythia8-libdir=/afs/cern.ch/sw/lcg/external/MCGenerators/pythia8/160/x86_64-slc5-gcc43-opt/lib
--with-gviz-incdir=/build/bellenot/libraries/x86_64-slc5-gcc43-opt/graphviz-2.24.0/include/graphviz
--with-gviz-libdir=/build/bellenot/libraries/x86_64-slc5-gcc43-opt/graphviz-2.24.0/lib
--with-xrootd=/afs/cern.ch/sw/lcg/external/xrootd/3.1.0p2/x86_64-slc5-gcc43-opt
In a new shell, attempts to compile with these options failed with
Configuring for linux
INFO: --enable-cintex: already enabled by default.
INFO: --enable-genvector: already enabled by default.
INFO: --enable-krb5: already enabled by default.
INFO: --enable-mathmore: already enabled by default.
INFO: --enable-mysql: already enabled by default.
INFO: --enable-oracle: already enabled by default.
INFO: --enable-python: already enabled by default.
INFO: --enable-reflex: already enabled by default.
WARNING: option --with-cern-libdir=/afs/cern.ch/sw/lcg/external/cernlib/2006a/x86_64-slc5-gcc43-opt/lib is deprecated and ignored!
Checking for GNU Make version >= 3.80 ... ok
Checking for C compiler ... gcc
Checking for C++ compiler ... g++
Checking for linker (LD) ... g++
Checking for F77 compiler ... gfortran
Checking for libX11 ... /usr/lib
Checking for X11/Xlib.h ... /usr/include
Checking for X11/xpm.h ... /usr/include
Checking for X11/Xft/Xft.h ... /usr/include
Checking for X11/extensions/shape.h ... /usr/include
Checking for libXpm ... /usr/lib
Checking for libXft ... /usr/lib
Checking for libXext ... /usr/lib
Checking for freetype-config ... /usr/bin/freetype-config
Checking for libfreetype version >= 9.3.0 ... ok
Checking whether to build included libfreetype6 ... no
Checking whether to build included libpcre ... yes
Checking for zlib.h ... /usr/include
Checking for libz ... /usr/lib
Checking whether to build included zlib ... no
Checking for lzma.h ... no
Checking for liblzma ... no
Checking whether to build included lzma ... yes
Checking for GL/gl.h ... /usr/include
Checking for libGL, or libMesaGL ... /usr/lib
Checking for libGLU, or libMesaGLU ... no
Checking for mysql_config ... not found
Checking for mysql.h ... /afs/cern.ch/sw/lcg/external/mysql/5.5.14/x86_64-slc5-gcc43-opt/include
Checking for libmysqlclient_r, libmysqlclient, or mysqlclient ... no
Explicitly required MySQL dependencies not fulfilled
even though the mysql library directory is specified, which contains the libraries the configuration script is complaining about. Is there a fix for this problem?
Removing mysql directories and disabling the mysql options, causes the build script to fail with
Checking for occi.h ... /afs/cern.ch/sw/lcg/external/oracle/11.2.0.1.0p3/x86_64-slc5-gcc43-opt/include
Checking for libclntsh, or oci ... no
Checking for libocci, or oraocci10 ... no
Explicitly required Oracle dependencies not fulfilled
Having removed all of the database and qt references the build script fails with
Checking for Python.h ... /afs/cern.ch/sw/lcg/external/Python/2.6.5/x86_64-slc5-gcc43-opt/include/python2.6
Checking for python2.6, libpython2.6, libpython, python, or Python ... no
Explicitly required Python dependencies not fulfilled
This is even more odd, since
]$ which python
/afs/cern.ch/sw/lcg/external/Python/2.6.5/x86_64-slc5-gcc43-opt/bin/python
The build script exits in the same way. (Even though the script does not have an extension “.sh”, the forum reports an error “The extension is not allowed.” when I try to upload it.) The script can therefore be found below.
Thanks and best regards,
Will
#!/bin/bash
root_version="5.34.00"
root_file="root_v"$root_version".source.tar.gz"
working_dir=$(mktemp -d)
prefix="/atlas/data1/userdata/wbell/software/root/$root_version/x86_64-slc5-gcc43-opt/root"
build_dir=$working_dir"/root/build"
cd $working_dir
if [ ! -f $root_file ]; then
echo "$root_file not present. Attempting a download using wget"
wget "ftp://root.cern.ch/root/"$root_file
if [[ $? != 0 ]]; then
echo "ERROR: download failed."
exit 1
fi
fi
if [ -d $prefix ]; then
echo "WARNING: $prefix already exists. Build command ignored."
exit 0
fi
echo "Unpacking $root_file"
mkdir -p $build_dir
cd $build_dir
tar xfz $working_dir/$root_file
echo "Building root version $root_version"
# Add the compiler version
source /afs/cern.ch/sw/lcg/external/gcc/4.3.2/x86_64-slc5/setup.sh
# 64 bit python for 64 bit ROOT
python_dir="/afs/cern.ch/sw/lcg/external/Python/2.6.5/x86_64-slc5-gcc43-opt"
if [[ $PATH != *"$python_dir"* ]]; then
export PATH="$python_dir/bin:$PATH"
fi
if [[ $LD_LIBRARY_PATH != *"$python_dir"* ]]; then
export LD_LIBRARY_PATH="$python_dir/lib:$LD_LIBRARY_PATH"
fi
cd root
./configure linux \
--fail-on-missing \
--enable-builtin-pcre \
--enable-cintex \
--enable-explicitlink \
--enable-gdml \
--enable-genvector \
--enable-krb5 \
--enable-mathmore \
--enable-minuit2 \
--disable-mysql \
--disable-oracle \
--enable-python \
--disable-qt \
--disable-qtgsi \
--enable-reflex \
--enable-roofit \
--enable-table \
--enable-unuran \
--with-cint-maxstruct=36000 \
--with-cint-maxtypedef=36000 \
--with-cint-longline=4096 \
--with-castor-incdir=/afs/cern.ch/sw/lcg/external/castor/2.1.9-9/x86_64-slc5-gcc43-opt/usr/include/shift \
--with-castor-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.9-9/x86_64-slc5-gcc43-opt/usr/lib64 \
--with-cern-libdir=/afs/cern.ch/sw/lcg/external/cernlib/2006a/x86_64-slc5-gcc43-opt/lib \
--with-dcap-libdir=/afs/cern.ch/sw/lcg/external/dcache_client/2.47.5-0/x86_64-slc5-gcc43-opt/dcap/lib \
--with-dcap-incdir=/afs/cern.ch/sw/lcg/external/dcache_client/2.47.5-0/x86_64-slc5-gcc43-opt/dcap/include \
--with-fftw3-incdir=/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/x86_64-slc5-gcc43-opt/include \
--with-fftw3-libdir=/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/x86_64-slc5-gcc43-opt/lib \
--with-gccxml=/afs/cern.ch/sw/lcg/external/gccxml/0.9.0_20110825/x86_64-slc5-gcc43-opt/bin \
--with-gfal-libdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-2/x86_64-slc5-gcc43-opt/lib \
--with-gfal-incdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-2/x86_64-slc5-gcc43-opt/include \
--with-gsl-incdir=/afs/cern.ch/sw/lcg/external/GSL/1.10/x86_64-slc5-gcc43-opt/include \
--with-gsl-libdir=/afs/cern.ch/sw/lcg/external/GSL/1.10/x86_64-slc5-gcc43-opt/lib \
--with-rfio-incdir=/afs/cern.ch/sw/lcg/external/castor/2.1.9-9/x86_64-slc5-gcc43-opt/usr/include/shift \
--with-rfio-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.9-9/x86_64-slc5-gcc43-opt/usr/lib64 \
--with-pythia6-libdir=/afs/cern.ch/sw/lcg/external/MCGenerators/pythia6/426.2/x86_64-slc5-gcc43-opt/lib \
--with-pythia8-incdir=/afs/cern.ch/sw/lcg/external/MCGenerators/pythia8/160/x86_64-slc5-gcc43-opt/include \
--with-pythia8-libdir=/afs/cern.ch/sw/lcg/external/MCGenerators/pythia8/160/x86_64-slc5-gcc43-opt/lib \
--with-gviz-incdir=/build/bellenot/libraries/x86_64-slc5-gcc43-opt/graphviz-2.24.0/include/graphviz \
--with-gviz-libdir=/build/bellenot/libraries/x86_64-slc5-gcc43-opt/graphviz-2.24.0/lib \
--with-xrootd=/afs/cern.ch/sw/lcg/external/xrootd/3.1.0p2/x86_64-slc5-gcc43-opt