A problem with GSL and ROOT

Angelo Graziosi angelo.graziosi at alice.it
Fri Dec 11 17:47:08 UTC 2009

I want to flag the followinq problem I meat building ROOT[1] on 
Kubuntu-9.10 (K-9.10).

When 'configure' finds GSL on the system then a component of ROOT, 
called MathMore, is enabled for the build:

Checking for gsl/gsl_version.h ... /usr/include
Checking for GSL version >= 1.8 ... ok
Checking for libgsl, gslML, or gsl ... /usr/lib64
Checking for libgslcblas, gslcblasML, gslcblas, or cblas ... /usr/lib64
Checking whether to build libMathMore ... yes

But on K-910 it fails in this way:

g++ -shared -Wl,-soname,libNetx.so.5.25 -m64 -O2 -o lib/libNetx.so.5.25 
net/netx/src/TXNetFile.o net/netx/src/TXNetFileStager.o 
net/netx/src/TXNetSystem.o net/netx/src/G__Netx.o -Llib -lNet -lRIO 
-lThread -Lnet/xrootd/src/xrootd/lib -lXrdOuc -lXrdSys -lXrdClient -Llib 
-lCore -lCint -ldl
/usr/bin/ld: /usr/lib64/libgslcblas.a(sasum.o): relocation R_X86_64_32 
against `.text' can not be used when making a shared object; recompile 
with -fPIC
/usr/lib64/libgslcblas.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [lib/libMathMore.so] Errore 1
make: *** In attesa di lavori non terminati...
==> lib/libMatrix.so done
==> lib/libGeom.so done
==> lib/libNetx.so done
rm core/utils/src/RStl_tmp.cxx core/utils/src/rootcint_tmp.cxx

I flagged this to ROOT guys and they changed the configure test so that 
if 'libgslcblas.a' is found but built without '-fPIC', MathMore is 
disabled. This is a pity because on Kubuntu-8.04 ROOT builds fine with 
all its components.


[1] http://root.cern.ch

More information about the Ubuntu-devel-discuss mailing list