[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
multiply-defined symbols problem on solaris9 (libtool-1.5.18)
From: |
Derek Feichtinger |
Subject: |
multiply-defined symbols problem on solaris9 (libtool-1.5.18) |
Date: |
Fri, 19 Aug 2005 14:36:22 +0200 |
User-agent: |
KMail/1.7.2 |
Hi,
I have a problem with multiply-defined symbols from two convenience libraries
causing a link problem when I build a shared libtool library. This only
happens to me on a number of solaris9 installations with the Forte Developer
7 C++ compiler.
libtool version: 1.5.18
I use automake-1.6 and autoconf-2.59.
The multiply-defined symbols in libXrdNet and libXrdOuc (see output lines
below) derive from template instantiations. In other compilers the symbols
get included into the archives as WEAK symbols, so the linking is fine. But
on this SUN Forte compiler the symbols are not weak and a clash happens.
I can compile it from the command line if I modify the link line to contain
either '-xar' or if I change the '-z -Qoption ld allextract,...' to
'-z -Qoption ld defaultextract'.
Is there a way of communicating this in a simple way to libtool or does it
require a patch? libtool silently ignores my attempts to get '-xar' on the
command line, if I try to override the linker specification in configure to
be 'CC -xar' (i.e. the libtool line still contains it, but after processing
with libtool it is gone)
Libtool output:
/bin/bash ../../libtool --mode=link CC -DSUNCC -D_POSIX_PTHREAD_SEMANTICS
-xarch=v8plus -D_REENTRANT -L/usr/local/lib -mt -o libXrdSec.la
-rpath /tmp/compiletest/install/lib -ldl XrdSecClient.lo XrdSecPManager.lo
XrdSecProtocolhost.lo
XrdSecServer.lo ../XrdOuc/libXrdOuc.la ../XrdNet/libXrdNet.la -lssl
CC -G -nolib -hlibXrdSec.so.0
-o .libs/libXrdSec.so.0.0.0 .libs/XrdSecClient.o .libs/XrdSecPManager.o
.libs/XrdSecProtocolhost.o .libs/XrdSecServer.o
-Qoption ld -z -Qoption ld
allextract,../XrdOuc/.libs/libXrdOuc.a,../XrdNet/.libs/libXrdNet.a -Qoption
ld -z -Qoption ld defaultextract -L/usr/local/lib -ldl -lpthread -lrt
-lsocket -lnsl -lssl -mt
Thanks for any help,
Derek
- multiply-defined symbols problem on solaris9 (libtool-1.5.18),
Derek Feichtinger <=