[Rivet] Rivet takes system GSL

Dmitri Konstantinov Dmitri.Konstantinov at cern.ch
Tue Jan 30 11:45:53 GMT 2018


Dear Rivet developers,

Recently we got an e-mail from LHCb collaborations saying that they are 
experiencing some problem Rivet 2.5.4( and 2.5.3) from our LCG_91 release.

The problem is the following. By some reason the  libRivet.so is linked 
with system libgsl.so.0 but not with libgsl.so.19 of GSL version 
explicitly specified with:

--with-gsl=/cvmfs/sft.cern.ch/lcg/releases/LCG_92/GSL/2.1/x86_64-slc6-gcc62-opt

The source of the problem is that fastjet-config returns some flags 
pointing to system libraries and inside Rivet's src/Makefile.am
FASTJET flags are placed before GSL and therefore GSL library is taken 
from system...

*/cvmfs/sft.cern.ch/lcg/releases/LCG_92/fastjet/3.3.0/x86_64-slc6-gcc62-opt/bin/fastjet-config 
--libs --shared=no --plugins
[ ***fastjet-config is used by Rivet to get linking flags]**
-lm 
/cvmfs/sft.cern.ch/lcg/releases/fastjet/3.3.0-e4cac/x86_64-slc6-gcc62-opt/lib/libfastjettools.a 
/cvmfs/sft.cern.ch/lcg/releases/fastjet/3.3.0-e4cac/x86_64-slc6-gcc62-opt/lib/libfastjet.a 
/cvmfs/sft.cern.ch/lcg/releases/fastjet/3.3.0-e4cac/x86_64-slc6-gcc62-opt/lib/libfastjetplugins.a 
/cvmfs/sft.cern.ch/lcg/releases/fastjet/3.3.0-e4cac/x86_64-slc6-gcc62-opt/lib/libsiscone.a 
/cvmfs/sft.cern.ch/lcg/releases/fastjet/3.3.0-e4cac/x86_64-slc6-gcc62-opt/lib/libsiscone_spherical.a 
-L/cvmfs/sft.cern.ch/lcg/contrib/gcc/6.2.0binutils/x86_64-slc6/bin/../lib/gcc/x86_64-pc-linux-gnu/6.2.0 
-L/cvmfs/sft.cern.ch/lcg/contrib/gcc/6.2.0binutils/x86_64-slc6/bin/../lib/gcc 
-L/cvmfs/sft.cern.ch/lcg/contrib/gcc/6.2.0binutils/x86_64-slc6/bin/../lib/gcc/x86_64-pc-linux-gnu/6.2.0/../../../../lib64 
*-L/lib/../lib64 -L/usr/lib/../lib64* 
-L/cvmfs/sft.cern.ch/lcg/contrib/gcc/6.2.0binutils/x86_64-slc6/bin/../lib/gcc/x86_64-pc-linux-gnu/6.2.0/../../.. 
-lgfortran -lm -lquadmath

*Rivet Makefile.am content:*

SUBDIRS = Core Tools Projections
SUBDIRS += Analyses
ANA_LIBADD = Analyses/libRivetAnalysisTools.la

lib_LTLIBRARIES = libRivet.la
libRivet_la_SOURCES =
libRivet_la_LDFLAGS = -export-dynamic -avoid-version -L$(YODALIBPATH) 
-L$(HEPMCLIBPATH)
libRivet_la_LIBADD = Core/libRivetCore.la 
Projections/libRivetProjections.la Tools/libRivetTools.la $(ANA_LIBADD) \
   -lYODA -lHepMC -ldl -lm *$(GSL_LDFLAGS) $(FASTJETCONFIGLIBADD)*
src/Makefile.am (END)


Switching *$(GSL_LDFLAGS) $(FASTJETCONFIGLIBADD) can fix the problem.*

Please notу that LCG_92 is not affected and therefore I think that 
possible reason is that the latest release is built within docker 
container with more clean environment.

Therefore there are two possible solution - 1) we are not touching 
anything and re-build Rivet within docker container or 2) we apply patch 
and rebuild.

Cheers,
    Dima for GENSER
**
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.hepforge.org/lists-archive/rivet/attachments/20180130/758e4762/attachment.html>


More information about the Rivet mailing list