Hi,
I think this is just due to the link order in:
Creating shared library ../../lib/sun4x_58/libXrdOfs.so
CC -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -KPIC -DSUNCC -D_REENTRANT -mt -D_POSIX_PTHREAD_SEMANTICS -fast -xarch=v8plus -DXrdDEBUG=0 ../../obj/sun4x_58/XrdOfs.o ../../obj/sun4x_58/XrdOfsConfig.o ../../obj/sun4x_58/XrdOfsHandle.o -G -lposix4 -lsocket -lnsl -L/lib -lpthread -ldl -lCstd -L../../lib/sun4x_58 -lXrdAcc -lXrdOss -lXrdOdc -lXrdOuc -lXrdXr -o ../../lib/sun4x_58/libXrdOfs.so
The system libraries are before the Xrd ones. If I flip LIBS and MORELIBS
around, i.e.
Creating shared library ../../lib/sun4x_58/libXrdOfs.so
CC -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -KPIC -DSUNCC -D_REENTRANT -mt -D
_POSIX_PTHREAD_SEMANTICS -fast -xarch=v8plus -DXrdDEBUG=0 ../../obj/sun4x_58/Xrd
Ofs.o ../../obj/sun4x_58/XrdOfsConfig.o ../../obj/sun4x_58/XrdOfsHandle.o -G
-L../../lib/sun4x_58 -lXrdAcc -lXrdOss -lXrdOdc -lXrdOuc -lXrdXr -lposix4 -lsock
et -lnsl -L/lib -lpthread -ldl -lCstd -o ../../lib/sun4x_58/libXrdOfs.so
With this change xrootd starts and loads the libXrdOfs.so library on sol8. I
think this might be backwards in other places, too. I'll check systematically
and if nothing comes up I'll make a new version.
BTW, the --enable-echo is already useful... I guess the linker in sol8
(i.e. Workshop 6) was still a single pass linker?
(I hope a particularly nasty place in Hell is reserved for the Sun marketing
people who keep changing the name of their stupid, slow compiler.)
Pete
On Thu, Sep 02, 2004 at 04:32:23PM +0200, Peter Elmer wrote:
> Hi Gerri,
>
> I just tried to run it on the same machine I used to make the build:
>
> shire03> cat prova.cf
> xrootd.fslib 20040901-0956/lib/libXrdOfs.so
> oss.readonly
> xrootd.export /data
>
> shire03> uname -a
> SunOS shire03 5.8 Generic_117350-05 sun4u sparc SUNW,Sun-Fire
>
> shire03> 20040901-0956/bin/xrootd -c prova.cf
> 040902 07:29:06 001 (c) 2004 Stanford University/SLAC xrd version 20040901-0956
> 040902 07:29:06 001 [log in to unmask] initialization started.
> 040902 07:29:06 001 Using configuration file prova.cf
> 040902 07:29:06 001 Optimizing for 256 connections; maximum is 1024
> 040902 07:29:06 001 (c) 2003 Stanford University/SLAC XRootd (eXtended Root Daemon).
> 040902 07:29:06 001 XRootd seclib not specified; strong authentication disabled
> 040902 07:29:06 001 XrootdConfig: ld.so.1: 20040901-0956/bin/xrootd: fatal: relocation error: file 20040901-0956/lib/libXrdOfs.so: symbol __1cDstd2l4n0ALchar_traits4Cc___6Frn0ANbasic_ostream4CcCTA__pkC_3_: referenced symbol not found opening shared library 20040901-0956/lib/libXrdOfs.so
> 040902 07:29:06 001 XrootdConfig: Unable to load file system.
> 040902 07:29:06 001 XrdProtocol: Protocol xrootd could not be loaded
> 040902 07:29:06 001 [log in to unmask]:1094 initialization failed.
> shire03>
>
> The symbol is:
>
> shire03> dem __1cDstd2l4n0ALchar_traits4Cc___6Frn0ANbasic_ostream4CcCTA__pkC_3_
>
> __1cDstd2l4n0ALchar_traits4Cc___6Frn0ANbasic_ostream4CcCTA__pkC_3_ == std::basic_ostream<char,__type_0>&std::operator<< <std::char_traits<char> >(std::basic_ostream<char,__type_0>&,const unsigned char*)
>
> Interesting, on the sol8 machine I see:
>
> shire03> ldd 20040901-0956/bin/xrootd
> librt.so.1 => /usr/lib/librt.so.1
> libsocket.so.1 => /usr/lib/libsocket.so.1
> libnsl.so.1 => /usr/lib/libnsl.so.1
> libpthread.so.1 => /usr/lib/libpthread.so.1
> libdl.so.1 => /usr/lib/libdl.so.1
> libCrun.so.1 => /usr/lib/libCrun.so.1
> libm.so.1 => /opt/SUNWspro/lib/libm.so.1
> libw.so.1 => /usr/lib/libw.so.1
> libthread.so.1 => /usr/lib/libthread.so.1
> libc.so.1 => /usr/lib/libc.so.1
> libaio.so.1 => /usr/lib/libaio.so.1
> libmp.so.2 => /usr/lib/libmp.so.2
> /usr/platform/SUNW,Sun-Fire/lib/libc_psr.so.1
>
> while on the sol9 machine (with the sol9 build) I see:
>
> kan001> ldd 20040901-0956/bin/xrootd
> librt.so.1 => /usr/lib/librt.so.1
> libsocket.so.1 => /usr/lib/libsocket.so.1
> libnsl.so.1 => /usr/lib/libnsl.so.1
> libpthread.so.1 => /usr/lib/libpthread.so.1
> libdl.so.1 => /usr/lib/libdl.so.1
> libCstd.so.1 => /usr/lib/libCstd.so.1
> libCrun.so.1 => /usr/lib/libCrun.so.1
> libm.so.1 => /usr/lib/libm.so.1
> libw.so.1 => /usr/lib/libw.so.1
> libthread.so.1 => /usr/lib/libthread.so.1
> libc.so.1 => /usr/lib/libc.so.1
> libaio.so.1 => /usr/lib/libaio.so.1
> libmd5.so.1 => /usr/lib/libmd5.so.1
> libmp.so.2 => /usr/lib/libmp.so.2
> /usr/lib/cpu/sparcv8plus/libCstd_isa.so.1
> /usr/platform/SUNW,Sun-Fire-V240/lib/libc_psr.so.1
> /usr/platform/SUNW,Sun-Fire-V240/lib/libmd5_psr.so.1
>
> Only the latter has libCstd.so, so something is going wrong with the sol8
> build.
>
> Pete
>
> On Thu, Sep 02, 2004 at 04:21:54PM +0200, Gerardo Ganis wrote:
> > Hi Jean-Yves,
> >
> > I have just tried again on a CERN sundev machine
> >
> > SunOS sundev013 5.8 Generic_108528-22 sun4u sparc SUNW,Sun-Fire-V210
> >
> > using CC
> >
> > CC: Sun WorkShop 6 update 1 C++ 5.2 Patch 109508-02 2001/03/04
> >
> > and everything seems to be fine.
> >
> > The symbol giving problems to you should be in libCstd.so: could
> > you check your LD_LIBRARY_PATH? It looks like you may have a
> > mismatch somewhere there ...
> >
> > Cheers, Gerri
> >
> >
> > On Thu, 2 Sep 2004, Jean-Yves Nief wrote:
> >
> > > hello Pete,
> > >
> > > I've tried it on Solaris 8 and I had a problem with some
> > > referenced symbol while I was trying to start a xrootd daemon (the
> > > problem is located in libXrdOfs.so):
> > > 040902 14:40:27 001 XrootdConfig: ld.so.1: /opt/xrd/bin/cur/xrootd:
> > > fatal: relocation error: file /opt/xrd/lib/
> > > cur/libXrdOfs.so: symbol
> > > __1cDstd2l4n0ALchar_traits4Cc___6Frn0ANbasic_ostream4CcCTA__pkC_3_:
> > > referenced symbol
> > > not found opening shared library /opt/xrd/lib/cur/libXrdOfs.so
> > >
> > > I did not try the Solaris 9 distrib yet.
> > > cheers,
> > > JY
> > >
> > > Peter Elmer wrote:
> > >
> > > > Hi All,
> > > >
> > > > Following a discussion in one of the BaBar HN fora, there is now another
> > > >new xrootd version 20040901-0956. On top of the last version 20040901-0613,
> > > >this just adds a few more small fixes for building xrootd within ROOT. If
> > > >nothing else comes up, it would help BaBar test the HEAD of ROOT CVS if this
> > > >xrootd version can be added in place of the one from a month ago.
> > > >
> > > > For the full set of changes and links to rpms/tarballs to download see the
> > > >the xrootd web page:
> > > >
> > > > http://xrootd.slac.stanford.edu
> > > >
> > > >Let us know if there are problems.
> > > >
> > > > thanks,
> > > > Pete
> > > >
-------------------------------------------------------------------------
Peter Elmer E-mail: [log in to unmask] Phone: +41 (22) 767-4644
Address: CERN Division PPE, Bat. 32 2C-14, CH-1211 Geneva 23, Switzerland
-------------------------------------------------------------------------
|