Problem installing ROOT

Hello all,

I’m a new user of ROOT, and am installing it in support of an installation of GATE that I will be using for PET simulations.

I have been following the instructions from this guide on the GATE wiki, and have also read this page on the ROOT website. I’m trying to do a fixed location installation (as per the GATE instructions) of version 5.30/00 on Ubuntu 10.04 LTS.

I have installed the prerequisite packages, and untarred the ROOT source file into a directory and run the following commands:

./configure --prefix=$PWD

However the second command seems to fail. It produces the following result:

Options to Xrootd-configure: i386_linux --ccflavour=gcc --use-xrd-strlcpy --disable-krb5 --with-ssl-shared=yes --enable-shadowpw --disable-krb4 --enable-echo --no-arch-subdirs --disable-mon --with-cxx=g++ --with-ld=g++ 
Guessing architecture/compiler: linux:i686:2.6.32-32-generic
linux | i686 | 2.6.32-32-generic | i386_linux26 | gcc
Configuring for i386_linux and compiler gcc
Using new format (<name>) for standard headers
Building posix module and related ones...
Checking for gcc special options ... yes, -Wno-strict-aliasing
Using xrd implementation of strlcpy
Checking for getprotobyname_r ... yes
Checking for gethostbyaddr_r ... yes
Checking for getnameinfo ... yes
Checking for sigwaitinfo ... yes
Checking for setresuid ... yes
Checking for zlib.h ... yes
Checking for libz ... /usr/lib
Checking for fstatat ... yes
Checking for readline ... no
Checking for /dev/poll support ... no
Checking for epoll support ... yes
Checking for sendfile support ... yes
Checking for builtin atomics ... yes
Checking for rm ... /bin/rm
Checking for ln ... /bin/ln
Checking for libpthread ... /usr/lib
Enabling password-based authentication module ... done
Checking for shadow passwords ... yes
Enabling simple-shared-secret authentication module ... done
Enabling GSI authentication module ... done
Checking for libxml/tree.h ... no
Enabling SSL authentication module ... no: SSL authentication requires XML2 dev package
Checking for openssl/opensslv.h ... no
OpenSSL version: unknown (0)
Checking for openssl version ... no: minimal version required is 0.9.6
Checking for libssl ... no
Disabling GSI ... (requires OpenSSL)
Disabling SSL ... (requires OpenSSL)
Writing GNUmakefile  ... done
Writing src/GNUmake.env  ... done
Writing src/GNUmake.options  ... done
Writing config/sunCC  ... done
Writing config/sunCCamd  ... done
Writing config/sunCCamd510  ... done
Writing config/sunCCamd64  ... done
Writing config/sunCCi86pc  ... done
Writing config/sunCCi8664pc  ... done
Cleaning /tmp/xrootd-configure-classic-uYh9k8  ... done
cp /home/jasper/gate/root_5.30.00/net/netx/inc/TXNetFile.h include/TXNetFile.h
cp /home/jasper/gate/root_5.30.00/net/netx/inc/TXNetFileStager.h include/TXNetFileStager.h
cp /home/jasper/gate/root_5.30.00/net/netx/inc/TXNetSystem.h include/TXNetSystem.h
cp /home/jasper/gate/root_5.30.00/proof/proofx/inc/TXHandler.h include/TXHandler.h
cp /home/jasper/gate/root_5.30.00/proof/proofx/inc/TXProofMgr.h include/TXProofMgr.h
cp /home/jasper/gate/root_5.30.00/proof/proofx/inc/TXProofServ.h include/TXProofServ.h
cp /home/jasper/gate/root_5.30.00/proof/proofx/inc/TXSlave.h include/TXSlave.h
cp /home/jasper/gate/root_5.30.00/proof/proofx/inc/TXSocket.h include/TXSocket.h
cp /home/jasper/gate/root_5.30.00/proof/proofx/inc/TXSocketHandler.h include/TXSocketHandler.h
cp /home/jasper/gate/root_5.30.00/proof/proofx/inc/TXUnixSocket.h include/TXUnixSocket.h
*** Building xrootd ...
make[1]: Entering directory `/home/jasper/gate/root_5.30.00/net/xrootd/src/xrootd'
Making sys component...
cd src/XrdSys;\
	make all ARCH=i386_linux --no-print-directory
Make XrdSys done.
Making ouc component...
cd src/XrdOuc;\
	make all ARCH=i386_linux --no-print-directory
Make XrdOuc done.
Making net component...
Make XrdNet done.
Making sec component...
cd src/XrdSec;\
	make all ARCH=i386_linux --no-print-directory
Make XrdSec done.
Making sut (sec utils) component...
cd src/XrdSut;\
	make all ARCH=i386_linux --no-print-directory
Make sut (sec utils) done.
Making crypto component...
cd src/XrdCrypto;\
	make all ARCH=i386_linux --no-print-directory
Make crypto done.
Making secpwd component...
cd src/XrdSecpwd;\
	make all ARCH=i386_linux --no-print-directory
Make XrdSecpwd done.
Making secsss component...
cd src/XrdSecsss;\
	make all ARCH=i386_linux --no-print-directory
Make XrdSecsss done.
Making secunix component...
cd src/XrdSecunix;\
	make all ARCH=i386_linux --no-print-directory
Make XrdSecunix done.
Making sfs component...
cd src/XrdSfs;\
	make all ARCH=i386_linux --no-print-directory
Make XrdSfs done.
Making acc component...
cd src/XrdAcc;\
	make all ARCH=i386_linux --no-print-directory
Make XrdAcc done.
Making xrd component...
cd src/Xrd;\
	make all ARCH=i386_linux --no-print-directory
Make Xrd done.
Making oss component...
cd src/XrdOss;\
	make all ARCH=i386_linux --no-print-directory
Make XrdOss done.
Making bwm component...
cd src/XrdBwm;\
	make all ARCH=i386_linux --no-print-directory
Make XrdBwm done.
Making frm component...
Make XrdFrm done.
Making cms component...
cd src/XrdCms;\
	make all ARCH=i386_linux --no-print-directory
Creating executable ../../bin/cmsd
g++ -D_ALL_SOURCE -D_REENTRANT -D_GNU_SOURCE -fPIC -rdynamic -Wall -Wno-deprecated -D__linux__  -m32 -O2 ../../obj/XrdCmsAdmin.o ../../obj/XrdCmsBaseFS.o ../../obj/XrdCmsCache.o ../../obj/XrdCmsCluster.o ../../obj/XrdCmsConfig.o ../../obj/XrdCmsJob.o ../../obj/XrdCmsKey.o ../../obj/XrdCmsManList.o ../../obj/XrdCmsManTree.o ../../obj/XrdCmsManager.o ../../obj/XrdCmsMeter.o ../../obj/XrdCmsNash.o ../../obj/XrdCmsNode.o ../../obj/XrdCmsPList.o ../../obj/XrdCmsPrepArgs.o ../../obj/XrdCmsPrepare.o ../../obj/XrdCmsProtocol.o ../../obj/XrdCmsReq.o ../../obj/XrdCmsRouting.o ../../obj/XrdCmsRRQ.o ../../obj/XrdCmsRTable.o ../../obj/XrdCmsState.o ../../obj/XrdCmsSupervisor.o ../../obj/XrdCmsXmiReq.o ../../obj/XrdCmsLogin.o ../../obj/XrdCmsParser.o ../../obj/XrdCmsRRData.o ../../obj/XrdCmsSecurity.o ../../obj/XrdCmsTalk.o -L../../lib -lXrdOss -lXrdFrm -lXrdNet -lXrdOuc -lXrdNetUtil -lXrd -lXrdSys  -lnsl -lpthread -lrt -ldl -lc  -o ../../bin/cmsd
../../lib/libXrd.a(XrdLink.o): In function `XrdLink::syncStats(int*)': undefined reference to `__sync_fetch_and_add_8' undefined reference to `__sync_fetch_and_and_8' undefined reference to `__sync_fetch_and_add_8' undefined reference to `__sync_fetch_and_add_8' undefined reference to `__sync_fetch_and_and_8' undefined reference to `__sync_fetch_and_add_8' undefined reference to `__sync_fetch_and_add_8'
../../lib/libXrd.a(XrdLink.o): In function `XrdLink::Stats(char*, int, int)': undefined reference to `__sync_fetch_and_or_8' undefined reference to `__sync_fetch_and_or_8' undefined reference to `__sync_fetch_and_or_8' undefined reference to `__sync_fetch_and_or_8'
../../lib/libXrd.a(XrdLink.o): In function `XrdLink::Send(char const*, int)': undefined reference to `__sync_fetch_and_add_8' undefined reference to `__sync_fetch_and_add_8' undefined reference to `__sync_fetch_and_add_8'
../../lib/libXrd.a(XrdLink.o): In function `XrdLink::Send(XrdLink::sfVec const*, int)': undefined reference to `__sync_fetch_and_add_8'
../../lib/libXrd.a(XrdLink.o): In function `XrdLink::Send(iovec const*, int, int)': undefined reference to `__sync_fetch_and_add_8'
../../lib/libXrd.a(XrdLink.o) more undefined references to `__sync_fetch_and_add_8' follow
collect2: ld returned 1 exit status
make[5]: *** [../../bin/cmsd] Error 1
make[4]: *** [Linuxall] Error 2
make[3]: *** [all] Error 2
make[2]: *** [XrdCms] Error 2
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/jasper/gate/root_5.30.00/net/xrootd/src/xrootd'
*** Error condition reported by make (rc = 2):
make: *** [net/xrootd/src/xrootd/LastBuild.d] Error 1

Could anyone advise on what I should do? Unfortunately, my knowledge of Linux is a bit limited…

Thank you!

I’ve met the same problem as you. I would be very gratitude for the one who would help me to solve this problem.

I’ve tried to install again, but this time I tried installing v5.28/00c. I untarred the files to a new directory and followed the same instructions from the GATE webiste, ie:

./configure --prefix=$PWD
make install

This time it the installation was successful. Hope this information is useful to others.

see this thread:

Kwyjibo has suggested a workaround that worked for my 64bit machine fine.