Hi,
Build problem of Qserv master branch :
----------------------------------------------------
I have next problem while building last Qserv version with g++ (GCC)
4.8.3 20140624 (Red Hat 4.8.3-1)
In command :
scons build -j 20 :
....
g++ -o build/xrdfs/testMySqlFs_1
-Wl,-rpath-link=/home/qserv/stack/Linux64/xrootd/master-g2798bbf748/lib:/home/qserv/stack/EupsBuildDir/Linux64/qserv-master-g9a20298a97/qserv-master-g9a20298a97/lib:/home/qserv/stack/Linux64/zookeeper/3.4.6/c-binding/lib/:/home/qserv/stack/Linux64/protobuf/2.4.1/lib:/home/qserv/stack/Linux64/libevent/2.0.16-stable/lib:/home/qserv/stack/Linux64/boost/1.55.0.1+2/lib:/home/qserv/stack/Linux64/mysql/5.1.65/lib:/home/qserv/stack/Linux64/mysqlclient/5.1.73/lib
-Wl,-rpath=/home/qserv/stack/Linux64/xrootd/master-g2798bbf748/lib
build/xrdfs/testMySqlFs_1.o
-L/home/qserv/stack/Linux64/antlr/2.7.7/lib
-L/home/qserv/stack/Linux64/boost/1.55.0.1+2/lib
-L/home/qserv/stack/Linux64/xrootd/master-g2798bbf748/lib
-L/home/qserv/stack/Linux64/zookeeper/3.4.6/c-binding/lib
-L/home/qserv/stack/Linux64/mysql/5.1.65/lib
-L/home/qserv/stack/Linux64/protobuf/2.4.1/lib -lXrdXrootd
/bin/ld: build/xrdfs/testMySqlFs_1.o: undefined reference to symbol
'_ZN14XrdOucBuffPool8BuffSlot7RecycleEP12XrdOucBuffer'
/bin/ld: note:
'_ZN14XrdOucBuffPool8BuffSlot7RecycleEP12XrdOucBuffer' is defined in
DSO
/home/qserv/stack/Linux64/xrootd/master-g2798bbf748/lib/libXrdUtils.so.2
so try adding it to the linker command line
/home/qserv/stack/Linux64/xrootd/master-g2798bbf748/lib/libXrdUtils.so.2:
could not read symbols: Invalid operation
....
Next fix at line 23 of core/modules/xrdfs/SConscript.test solves the
problem :
p = env.Program('testMySqlFs_1.cc', LIBS=["XrdXrootd", "XrdUtils"])
This problem doesn't seems to happen with : g++ (GCC) 4.4.7 20120313
(Red Hat 4.4.7-4)
Do you think we can apply this patch to Qserv master branch ?
Qserv dependencies versions management in eups :
--------------------------------------------------------------------
Furthermore, i see that Qserv master branch doesn't use a new xrootd
version.
For now I don't know the right procedure to force a given Qserv
version to use a given version of its dependencies.
It seems it is possible to do this with the rebuild command of
lsstsw, but how ?
Please note that this problem seems to be the same than the one
described in qserv-l mail named : "Redundant(?) installation of
doxygen"
Thanks,
Fabrice