[ 
http://issues.apache.org/jira/browse/XERCESC-1445?page=comments#action_12412867 
] 

Scott Cantor commented on XERCESC-1445:
---------------------------------------

Confirmed same issue on my Solaris 10 build. I think the problem is that the 
link command is only including a small part of the project. A bunch of archive 
libraries were built during the project make, but the link command I see at the 
end is tiny:

Making all in obj
gmake[2]: Entering directory `/home/scantor/src/xerces-c/obj'
/bin/bash ../libtool --tag=CXX --mode=link CC  -g -D_REENTRANT    -o 
libxerces.la -rpath /usr/local/lib -release 3.0   ../src/libsrc.la 
../lib/libcompat.la -lnsl -lsocket  -L/usr/local/lib -lcurl -lpthread
mkdir .libs
CC -G -nolib -hlibxerces-3.0.so -o .libs/libxerces-3.0.so   -Qoption ld -z 
-Qoption ld allextract ../src/.libs/libsrc.a ../lib/.libs/libcompat.a -Qoption 
ld -z -Qoption ld defaultextract  -R/usr/local/lib -R/usr/local/lib 
-L/usr/local/lib -L/usr/sfw/lib -lssl -lcrypto -lz -L/usr/lib -licuuc -licudata 
-lnsl -lsocket /usr/local/lib/libcurl.so -lpthread  

An unrelated Solaris CC bug...the build should really include the -mt flag to 
the compiler for multi-thread support. I usually do this in acx_pthread.m4 in 
my projects by special casing Solaris builds and adding in -mt as well as 
-D_REENTRANT for a non-gcc build.

> 3.0 unstable -- multiply defined symbols.  Solaris compilation, Sunpro CC.
> --------------------------------------------------------------------------
>
>          Key: XERCESC-1445
>          URL: http://issues.apache.org/jira/browse/XERCESC-1445
>      Project: Xerces-C++
>         Type: Bug

>   Components: Build
>     Versions: Nightly build (please specify the date)
>  Environment: % uname -a
> SunOS merlin.sce.carleton.ca 5.9 Generic_118558-04 sun4u sparc 
> SUNW,Sun-Blade-100
> % which CC
> /opt/SUNWspro/bin/CC
> %
>     Reporter: Greg Franks
>  Attachments: make.out
>
> make[2]: Entering directory `/home/greg/src/xerces-3.0/obj'
> /bin/sh ../libtool --tag=CXX --mode=link CC  -g -D_REENTRANT    -o 
> libxerces.la -rpath /home/greg/SunOS//lib -release 3.0  \
> ../src/libsrc.la ../lib/libcompat.la -lnsl -lsocket  -lpthread
> mkdir .libs
> CC -G -nolib -hlibxerces-3.0.so -o .libs/libxerces-3.0.so   -Qoption ld -z 
> -Qoption ld allextract,../src/.libs/libsrc.a,../\
> lib/.libs/libcompat.a -Qoption ld -z -Qoption ld defaultextract  -lnsl 
> -lsocket -lpthread
> ld: fatal: symbol `xercesc_3_0::ArrayJanitor<unsigned 
> short>::ArrayJanitor(unsigned short*const,xercesc_3_0::MemoryManager*\
> const)' is multiply-defined:
>         (file ../src/.libs/libsrc.a(5p1Hx3-VEoc2SE8Hxf3c.o) type=FUNC; file 
> ../src/.libs/libsrc.a(lt1-5p1Hx3-VEoc2SE8Hxf3c.\
> o) type=FUNC);
> There are many more -- I will attach the complete output from the build.
> A couple of thoughts:
> 1) Template instantiation is not being done correctly someplace.
> 2)  ar is being used instead of CC -xar in one place:
> ln .libs/libsrc.lax/libposixfmgr.a/CYlL5XBusGc3QexZRON2.o 
> .libs/libsrc.lax/lt777-CYlL5XBusGc3QexZRON2.o || cp .libs/libsrc.\
> lax/libposixfmgr.a/CYlL5XBusGc3QexZRON2.o 
> .libs/libsrc.lax/lt777-CYlL5XBusGc3QexZRON2.o
> ln .libs/libsrc.lax/libposixfmgr.a/LnpLxyFd9IXk4HQ5rcj9.o 
> .libs/libsrc.lax/lt778-LnpLxyFd9IXk4HQ5rcj9.o || cp .libs/libsrc.\
> lax/libposixfmgr.a/LnpLxyFd9IXk4HQ5rcj9.o 
> .libs/libsrc.lax/lt778-LnpLxyFd9IXk4HQ5rcj9.o
> ar cru .libs/libsrc.a .libs/libsrc.lax/libutil.a/Base64.o 
> .libs/libsrc.lax/libutil.a/BinFileInputStream.o .libs/libsrc.lax/\
> ...

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to