Re: problem building root 5.24.0 on Ubuntu 9.10

From: Jan Therhaag <therhaag_at_physik.uni-bonn.de>
Date: Wed, 11 Nov 2009 19:00:54 +0100


Hi Gerardo,

your file obviously helped to avoid the error concerning xroot, but now it stops at:

g++ -m32 -O2 -o bin/hadd main/src/hadd.o \

                   -Llib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lMatrix -lMathCore -lThread -lm -ldl -pthread -rdynamic lib/libRIO.so: undefined reference to `int TStreamerInfo::ReadBuffer<char**>(TBuffer&, char** const&, int, int, int, int)'
collect2: ld returned 1 exit status
make: *** [bin/hadd] Error 1
rm core/utils/src/RStl_tmp.cxx core/utils/src/rootcint_tmp.cxx

Do you have any further suggestions on that (maybe some problem with my gcc version 4.4.1)?

Cheers
Jan

On Wed, 2009-11-11 at 18:00 +0100, ganis wrote:
> Dear Jan,
>
> So, there is a (harmless) warning and the weird problem investigated at
>
> https://savannah.cern.ch/bugs/?47644
>
> could you please try by replacing
>
> net/xrootd/Module.mk
>
> with the attached file?
>
> Thanks,
>
> Gerri
>
>
>
> Jan Therhaag wrote:
> > Dear Gerardo,
> >
> > following your instructions I get:
> >
> > therhaag_at_HAL:~/Downloads/root$ sudo make all-xrootd > xroot-build.log
> > XrdFrmConfig.cc: In member function ‘int XrdFrmConfig::Configure(int,
> > char**, int (*)())’:
> > XrdFrmConfig.cc:360: warning: ignoring return value of ‘ssize_t
> > write(int, const void*, size_t)’, declared with attribute
> > warn_unused_result
> > touch: cannot touch `net/xrootd/src/xrootd/LastBuild.d': No such file or
> > directory
> > make: *** [net/xrootd/src/xrootd/LastBuild.d] Error 1
> >
> > The logfile (xroot-build.log) is attached.
> >
> > Thank you for your help.
> > Jan
> >
> > On Wed, 2009-11-11 at 16:55 +0100, Gerardo Ganis wrote:
> >
> >> Dear Jan,
> >>
> >> With 5-24-00 this indicates that the xrootd build failed. We have
> >> other people reporting problems with the newest
> >> Ubuntu but we were not able to reproduce them on our installations.
> >>
> >> Unfortunately, until a couple of months ago, the build system was
> >> not detecting the xrootd failure correctly and
> >> continued to build failing at 'netx' as in your case.We fixed this
> >> issue in the trunk, 5-25-02 and 5-24-00a,b:
> >> if you use one of these versions you should get the build error at
> >> xrootd.
> >>
> >> To find out what's wrong with the xrootd build, you should do the
> >> following:
> >>
> >> make distclean-xrootd
> >> make all-xrootd > xrootd-build.log
> >>
> >> Please post the error that you get on the screen and xrootd-buid.log .
> >>
> >> G. Ganis
> >>
> >>
> >> Jan Therhaag wrote:
> >>
> >>> Dear ROOT-users,
> >>>
> >>> I have a problem building ROOT 5.24.0 on my laptop which is running
> >>> Ubuntu 9.10 with gcc4.4.1. It seems a library (needed by xroot?) is
> >>> missing. Output (excerpt):
> >>>
> >>> g++ -shared -Wl,-soname,libNetx.so -m32 -O2 -o lib/libNetx.so
> >>> net/netx/src/TXNetFile.o net/netx/src/TXNetFileStager.o
> >>> net/netx/src/TXNetSystem.o net/netx/src/G__Netx.o
> >>> -Lnet/xrootd/src/xrootd/lib -lXrdOuc -lXrdSys -Llib -lXrdClient
> >>> /usr/bin/ld: cannot find -lXrdOuc
> >>> collect2: ld returned 1 exit status
> >>> make: *** [lib/libNetx.so] Error 1
> >>> rm core/utils/src/RStl_tmp.cxx core/utils/src/rootcint_tmp.cxx
> >>>
> >>> Any ideas how to solve this problem?
> >>>
> >>> Thanks in advance
> >>> Jan
> >>>
> >>> --------------
> >>>
> >>> Jan Therhaag
> >>> Physikalisches Institut, Universität Bonn
> >>> Zi 310, Tel.: 0228 73 2279
> >>> eMail: therhaag_at_physik.uni-bonn.de
> >>>
> >>>
> >>
> >
> >
>
> plain text document attachment (Module.mk)
> # Module.mk for xrootd module
> # Copyright (c) 2000 Rene Brun and Fons Rademakers
> #
> # Author: G Ganis, 27/7/2004
>
> MODNAME := xrootd
> MODDIR := net/$(MODNAME)
> MODDIRS := $(MODDIR)/src
>
> XROOTDDIR := $(MODDIR)
> XROOTDDIRS := $(MODDIRS)
> XROOTDDIRD := $(MODDIRS)/xrootd
> XROOTDDIRI := $(MODDIRS)/xrootd/src
> XROOTDDIRL := $(MODDIRS)/xrootd/lib
> XROOTDMAKE := $(XROOTDDIRD)/GNUmakefile
> XROOTDBUILD:= $(XROOTDDIRD)/LastBuild.d
>
> ##### Xrootd config options #####
> ifeq ($(PLATFORM),win32)
> ifeq (yes,$(WINRTDEBUG))
> XRDDBG = "Win32 Debug"
> else
> XRDDBG = "Win32 Release"
> endif
> else
> ifeq (debug,$(findstring debug,$(ROOTBUILD)))
> XRDDBG = "--build=debug"
> else
> XRDDBG =
> endif
> endif
> ifeq ($(PLATFORM),macosx)
> XRDSOEXT = so
> else
> XRDSOEXT = $(SOEXT)
> endif
> ifeq ($(PLATFORM),win32)
> XRDSOEXT = lib
> endif
>
> ##### Xrootd executables #####
> ifneq ($(PLATFORM),win32)
> XRDEXEC = xrootd olbd xrdcp xrd xrdpwdadmin cmsd xrdstagetool xprep
> ifneq ($(BUILDXRDGSI),)
> XRDEXEC += xrdgsiproxy
> endif
> else
> XRDEXEC = xrdcp.exe
> endif
> XRDEXECS := $(patsubst %,bin/%,$(XRDEXEC))
> XRDEXECSA := $(patsubst %,$(XROOTDDIRD)/bin/%,$(XRDEXEC))
>
> ##### Xrootd plugins #####
> ifeq ($(PLATFORM),win32)
> XRDPLUGINSA := $(XROOTDDIRL)/libXrdClient.$(XRDSOEXT)
> XRDPLUGINS := $(XRDPLUGINSA)
> XRDLIBS := $(XRDPLUGINS)
> else
> XRDLIBS := $(XROOTDDIRL)/libXrdOuc.a $(XROOTDDIRL)/libXrdNet.a \
> $(XROOTDDIRL)/libXrdSys.a \
> $(LPATH)/libXrdClient.$(XRDSOEXT) $(LPATH)/libXrdSut.$(XRDSOEXT)
> XRDNETXD := $(XROOTDDIRL)/libXrdOuc.a $(XROOTDDIRL)/libXrdSys.a \
> $(LPATH)/libXrdClient.$(XRDSOEXT)
> XRDPROOFXD := $(XRDLIBS) $(XROOTDDIRL)/libXrd.a
> XROOTDDIRP := $(LPATH)
> ifeq ($(ARCH),win32gcc)
> XRDLIBS := $(patsubst $(LPATH)/%.$(XRDSOEXT),bin/%.$(XRDSOEXT),$(XRDLIBS))
> endif
> endif
>
> ##### Xrootd headers used by netx, proofx#####
> XRDHDRS := $(wildcard $(XROOTDDIRI)/Xrd/*.hh) $(wildcard $(XROOTDDIRI)/XrdClient/*.hh) \
> $(wildcard $(XROOTDDIRI)/XrdNet/*.hh) $(wildcard $(XROOTDDIRI)/XrdOuc/*.hh) \
> $(wildcard $(XROOTDDIRI)/XrdSec/*.hh) $(wildcard $(XROOTDDIRI)/XrdSut/*.hh) \
> $(wildcard $(XROOTDDIRI)/XrdSys/*.hh)
>
> ##### Xrootd headers, sources, config dependences #####
> XROOTDDEPS := $(wildcard $(XROOTDDIRI)/*/*.hh) $(wildcard $(XROOTDDIRI)/*/*.cc)
> XROOTDCFGD := $(wildcard $(XROOTDDIRD)/config/*) $(wildcard $(XROOTDDIRD)/config/test/*) \
> $(XROOTDDIRD)/configure.classic
>
> # used in the main Makefile
> ALLLIBS += $(XRDLIBS)
> ifeq ($(PLATFORM),win32)
> ALLEXECS += $(XRDEXECS)
> endif
>
> # Local targets
> TARGETS := $(XRDLIBS)
> ifeq ($(PLATFORM),win32)
> TARGETS += $(XRDEXECS)
> endif
>
> # Workaround for 'sudo make'
> ifeq ($(PWD),)
> PWD := $(shell pwd)
> endif
>
> ##### local rules #####
> .PHONY: all-$(MODNAME) clean-$(MODNAME) distclean-$(MODNAME)
>
> ifneq ($(PLATFORM),win32)
> $(XROOTDMAKE): $(XROOTDCFGD)
> @(cd $(XROOTDDIRS); \
> RELE=`uname -r`; \
> CHIP=`uname -m | tr '[A-Z]' '[a-z]'`; \
> PROC=`uname -p`; \
> xarch="" ; \
> case "$(ARCH):$$RELE:$$CHIP:$$PROC" in \
> freebsd*:*) xopt="--ccflavour=gcc";; \
> linuxicc:*) xopt="--ccflavour=icc --use-xrd-strlcpy";; \
> linuxia64ecc:*) xopt="--ccflavour=icc --use-xrd-strlcpy";; \
> linuxia64gcc:*) xopt="--ccflavour=gccia64 --use-xrd-strlcpy";; \
> linuxx8664gcc:*) xopt="--ccflavour=gccx8664 --use-xrd-strlcpy";; \
> linuxx8664icc:*) xopt="--ccflavour=iccx8664 --use-xrd-strlcpy";; \
> linuxppc64gcc:*) xopt="--ccflavour=gccppc64 --use-xrd-strlcpy";; \
> linux*:*) xarch="i386_linux"; xopt="--ccflavour=gcc --use-xrd-strlcpy";; \
> macosx64:*) xopt="--ccflavour=macos64";; \
> macosxicc:*) xopt="--ccflavour=icc";; \
> macosx*:*) xopt="--ccflavour=macos";; \
> solaris*:*:i86pc:x86*) xopt="--ccflavour=sunCCamd --use-xrd-strlcpy";; \
> solaris*:*:i86pc:*) xopt="--ccflavour=sunCCi86pc --use-xrd-strlcpy";; \
> solarisgcc:5.8) xopt="--ccflavour=gcc";; \
> solaris*:5.8) xopt="--ccflavour=sunCC";; \
> solarisgcc:5.9) xopt="--ccflavour=gcc";; \
> solaris*:5.9) xopt="--ccflavour=sunCC";; \
> solarisgcc:*) xopt="--ccflavour=gcc --use-xrd-strlcpy";; \
> solaris*:*) xopt="--ccflavour=sunCC --use-xrd-strlcpy";; \
> win32gcc:*) xopt="win32gcc";; \
> *) xopt="";; \
> esac; \
> if [ "x$(KRB5LIB)" = "x" ] ; then \
> xopt="$$xopt --disable-krb5"; \
> fi; \
> if [ "x$(BUILDXRDGSI)" = "x" ] ; then \
> xopt="$$xopt --disable-gsi"; \
> fi; \
> if [ ! "x$(SSLLIBDIR)" = "x" ] ; then \
> xlib=`echo $(SSLLIBDIR) | cut -c3-`; \
> xopt="$$xopt --with-ssl-libdir=$$xlib"; \
> elif [ ! "x$(SSLLIB)" = "x" ] ; then \
> xlibs=`echo $(SSLLIB)`; \
> for l in $$xlibs; do \
> if [ ! "x$$l" = "x-lssl" ] && [ ! "x$$l" = "x-lcrypto" ] ; then \
> xlib=`dirname $$l`; \
> xopt="$$xopt --with-ssl-libdir=$$xlib"; \
> break; \
> fi; \
> done; \
> fi; \
> if [ ! "x$(SSLINCDIR)" = "x" ] ; then \
> xinc=`echo $(SSLINCDIR)`; \
> xopt="$$xopt --with-ssl-incdir=$$xinc"; \
> fi; \
> if [ ! "x$(SSLSHARED)" = "x" ] ; then \
> xsha=`echo $(SSLSHARED)`; \
> xopt="$$xopt --with-ssl-shared=$$xsha"; \
> fi; \
> if [ ! "x$(SHADOWFLAGS)" = "x" ] ; then \
> xopt="$$xopt --enable-shadowpw"; \
> fi; \
> if [ ! "x$(AFSLIBDIR)" = "x" ] ; then \
> xlib=`echo $(AFSLIBDIR) | cut -c3-`; \
> xopt="$$xopt --with-afs-libdir=$$xlib"; \
> elif [ ! "x$(AFSLIB)" = "x" ] ; then \
> xlibs=`echo $(AFSLIB)`; \
> for l in $$xlibs; do \
> if [ ! "x$$l" = "x-lafsrpc" ] && [ ! "x$$l" = "x-lafsauthent" ] ; then \
> xlib=`dirname $$l`; \
> xopt="$$xopt --with-afs-libdir=$$xlib"; \
> break; \
> fi; \
> done; \
> fi; \
> if [ ! "x$(AFSINCDIR)" = "x" ] ; then \
> xinc=`echo $(AFSINCDIR) | cut -c3-`; \
> xopt="$$xopt --with-afs-incdir=$$xinc"; \
> fi; \
> if [ ! "x$(AFSSHARED)" = "x" ] ; then \
> xsha=`echo $(AFSSHARED)`; \
> xopt="$$xopt --with-afs-shared=$$xsha"; \
> fi; \
> if [ ! "x$(XRDADDOPTS)" = "x" ] ; then \
> xaddopts=`echo $(XRDADDOPTS)`; \
> xopt="$$xopt $$xaddopts"; \
> fi; \
> xopt="$$xopt --disable-krb4 --enable-echo --no-arch-subdirs --disable-mon --with-cxx=$(CXX) --with-ld=$(LD)"; \
> cd xrootd; \
> echo "Options to Xrootd-configure: $$xarch $$xopt $(XRDDBG)"; \
> GNUMAKE=$(MAKE) ./configure.classic $$xarch $$xopt $(XRDDBG); \
> rc=$$? ; \
> if [ $$rc != "0" ] ; then \
> echo "*** Error condition reported by Xrootd-configure (rc = $$rc):"; \
> rm -f $(XROOTDMAKE); \
> exit 1; \
> fi)
> else
> $(XROOTDMAKE):
> @(if [ -d $(XROOTDDIRD)/pthreads-win32 ]; then \
> cp $(XROOTDDIRD)/pthreads-win32/lib/*.dll "bin" ; \
> cp $(XROOTDDIRD)/pthreads-win32/lib/*.lib "lib" ; \
> cp $(XROOTDDIRD)/pthreads-win32/include/*.h "include" ; \
> fi)
> @touch $(XROOTDMAKE)
> endif
>
> $(XRDEXECS): $(XRDEXECSA)
> ifeq ($(PLATFORM),win32)
> @(echo "Copying xrootd executables ..." ; \
> cp $(XROOTDDIRD)/bin/*.exe "bin" ;)
> endif
>
> $(XROOTDBUILD): $(XROOTDMAKE) $(XROOTDDEPS)
> ifneq ($(PLATFORM),win32)
> @(topdir=$(PWD); \
> cd $(XROOTDDIRD); \
> echo "*** Building xrootd ... topdir= $$topdir" ; \
> $(MAKE); \
> rc=$$? ; \
> if [ $$rc != "0" ] ; then \
> echo "*** Error condition reported by make (rc = $$rc):" \
> rm -f $(XROOTDMAKE) \
> exit 1; \
> fi ; \
> cd $$topdir ; \
> if [ -d $(XROOTDDIRL) ]; then \
> lsplug=`find $(XROOTDDIRL) -name "libXrd*.$(XRDSOEXT)"` ;\
> lsplug="$$lsplug `find $(XROOTDDIRL) -name "libXrd*.dylib"`" ;\
> for i in $$lsplug ; do \
> echo "Copying $$i ..." ; \
> if [ "x$(ARCH)" = "xwin32gcc" ] ; then \
> cp $$i bin ; \
> lname=`basename $$i` ; \
> ln -sf bin/$$lname $(LPATH)/$$lname ; \
> ln -sf bin/$$lname "$(LPATH)/$$lname.a" ; \
> else \
> if [ "x$(PLATFORM)" = "xmacosx" ] ; then \
> lname=`basename $$i` ; \
> install_name_tool -id $(LIBDIR)/$$lname $$i ; \
> fi ; \
> cp -p $$i $(LPATH)/ ; \
> fi ; \
> done ; \
> fi ; \
> for i in $(XRDEXEC); do \
> fopt="" ; \
> if [ -f bin/$$i ] ; then \
> fopt="-newer bin/$$i" ; \
> fi ; \
> bexe=`find $(XROOTDDIRD)/bin $$fopt -name $$i 2>/dev/null` ; \
> if test "x$$bexe" != "x" ; then \
> echo "Copying $$bexe executables ..." ; \
> cp -p $$bexe bin/$$i ; \
> fi ; \
> done ; \
> touch $(XROOTDBUILD))
> else
> @(cd $(XROOTDDIRD); \
> echo "*** Building xrootd ..."; \
> unset MAKEFLAGS; \
> nmake -f Makefile.msc CFG=$(XRDDBG))
> endif
>
> ### Rules for single components
> #
> $(LPATH)/libXrdClient.$(XRDSOEXT): $(XROOTDDIRL)/libXrdClient.$(XRDSOEXT)
> $(XROOTDDIRL)/libXrdClient.$(XRDSOEXT): $(XROOTDBUILD)
> #
> $(LPATH)/libXrdSut.$(XRDSOEXT): $(XROOTDDIRL)/libXrdSut.$(XRDSOEXT)
> $(XROOTDDIRL)/libXrdSut.$(XRDSOEXT): $(XROOTDBUILD)
> #
> $(XROOTDDIRL)/libXrdOuc.a: $(XROOTDBUILD)
> $(XROOTDDIRL)/libXrdNet.a: $(XROOTDBUILD)
> $(XROOTDDIRL)/libXrdSys.a: $(XROOTDBUILD)
> $(XROOTDDIRL)/libXrd.a: $(XROOTDBUILD)
> $(XROOTDDIRL)/libXrdClient.a: $(XROOTDBUILD)
> $(XROOTDDIRL)/libXrdSut.a: $(XROOTDBUILD)
>
> ### General rules
>
> all-$(MODNAME): $(TARGETS)
>
> clean-$(MODNAME):
> ifneq ($(PLATFORM),win32)
> @(if [ -f $(XROOTDMAKE) ]; then \
> $(MAKE) clean-netx; \
> $(MAKE) clean-proofx; \
> cd $(XROOTDDIRD); \
> $(MAKE) clean; \
> fi)
> else
> @(if [ -f $(XROOTDMAKE) ]; then \
> cd $(XROOTDDIRD); \
> unset MAKEFLAGS; \
> nmake -f Makefile.msc clean; \
> fi)
> endif
>
> clean:: clean-$(MODNAME)
>
> distclean-$(MODNAME): clean-$(MODNAME)
> @rm -rf $(XRDEXECS) $(LPATH)/libXrd* bin/libXrd* $(XROOTDBUILD)
> ifneq ($(PLATFORM),win32)
> @(if [ -f $(XROOTDMAKE) ]; then \
> $(MAKE) distclean-netx; \
> $(MAKE) distclean-proofx; \
> cd $(XROOTDDIRD); \
> $(MAKE) distclean; \
> fi)
> else
> @(if [ -f $(XROOTDMAKE) ]; then \
> cd $(XROOTDDIRD); \
> unset MAKEFLAGS; \
> nmake -f Makefile.msc distclean; \
> rm -f GNUmakefile; \
> fi)
> endif
>
> distclean:: distclean-$(MODNAME)
Received on Wed Nov 11 2009 - 19:01:15 CET

This archive was generated by hypermail 2.2.0 : Wed Nov 11 2009 - 23:50:01 CET