DSO reference error with binutils 2.14
Vijayaraghavan R
vijayaraghavan.ragunathan@oracle.com
Mon May 17 13:45:00 GMT 2004
H. J. Lu wrote:
>On Fri, May 14, 2004 at 10:26:53PM +0530, Vijayaraghavan R wrote:
>
>
>>Hi,
>>
>>Although my C test was done with ld to get shared library, Oracle seems
>>to be using gcc for the purpose. The output I notice on screen is:
>>
>>gcc -o /u02/oracle/product/10.1.0/oms/rdbms/lib/oracle
>>-L/u02/oracle/product/10.1.0/oms/rdbms/lib/
>>-L/u02/oracle/product/10.1.0/oms/lib/ -Wl,-E
>>/u02/oracle/product/10.1.0/oms/rdbms/lib/opimai.o
>>/u02/oracle/product/10.1.0/oms/rdbms/lib/ssoraed.o
>>/u02/oracle/product/10.1.0/oms/rdbms/lib/ttcsoi.o
>>/u02/oracle/product/10.1.0/oms/lib/nautab.o
>>/u02/oracle/product/10.1.0/oms/lib/naeet.o
>>/u02/oracle/product/10.1.0/oms/lib/naect.o
>>/u02/oracle/product/10.1.0/oms/lib/naedhs.o
>>/u02/oracle/product/10.1.0/oms/rdbms/lib/config.o -lserver9 -lodm9
>>-lskgxp9 -lclient9 -lvsn9 -lwtcserver9 -lcommon9 -lgeneric9
>>/u02/oracle/product/10.1.0/oms/rdbms/lib/defopt.o -lknlopt -lslax9
>>-lpls9 -lplp9 -lserver9 -lclient9 -lvsn9 -lwtcserver9 -lcommon9
>>-lgeneric9 -lknlopt -lslax9 -lpls9 -lplp9 `cat
>>/u02/oracle/product/10.1.0/oms/rdbms/lib/nmliblist` -ljox9 -lserver9
>>-lwwg9 `cat /u02/oracle/product/10.1.0/oms/lib/ldflags` -lnsslb9
>>-lncrypt9 -lnsgr9 -lnzjs9 -ln9 -lnnz9 -lnl9 -lnro9 `cat
>>/u02/oracle/product/10.1.0/oms/lib/ldflags` -lnsslb9 -lncrypt9
>>-lnsgr9 -lnzjs9 -ln9 -lnnz9 -lnl9 -lmm -lnls9 -lcore9 -lnls9 -lcore9
>>-lnls9 -lxml9 -lcore9 -lunls9 `cat
>>/u02/oracle/product/10.1.0/oms/lib/ldflags` -lnsslb9 -lncrypt9
>>-lnsgr9 -lnzjs9 -ln9 -lnnz9 -lnl9 -lnro9 `cat
>>/u02/oracle/product/10.1.0/oms/lib/ldflags` -lnsslb9 -lncrypt9
>>-lnsgr9 -lnzjs9 -ln9 -lnnz9 -lnl9 -ltrace9 -lnls9 -lcore9 -lnls9
>>-lcore9 -lnls9 -lxml9 -lcore9 -lunls9 `if /usr/bin/ar tv
>>/u02/oracle/product/10.1.0/oms/rdbms/lib/libknlopt.a | grep "kxmnsd.o" >
>>/dev/null 2>&1 ; then echo " " ; else echo "-lordsdo9"; fi` -lctxc9
>>-lctx9 -lzx9 -lgx9 -lctx9 -lzx9 -lgx9 -lordimt9 -lnls9 -lcore9 -lnls9
>>-lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lsnls9 -lunls9 `cat
>>/u02/oracle/product/10.1.0/oms/lib/sysliblist`
>>-Wl,-rpath,/u02/oracle/product/10.1.0/oms/lib:/lib:/usr/lib -lm `cat
>>/u02/oracle/product/10.1.0/oms/lib/sysliblist` -ldl -lm
>>/usr/bin/ld: /u02/oracle/product/10.1.0/oms/rdbms/lib/oracle: hidden
>>symbol `__fixunssfdi' in
>>/usr/lib/gcc-lib/i386-redhat-linux/3.2.3/libgcc.a(_fixunssfdi.oS) is
>>referenced by DSO
>>collect2: ld returned 1 exit status
>>
>>
>>
>
>You have a .so file which isn't built with "gcc -shared". Just do
>
># nm -u .so file | grep __fixunssfdi
>
>to see which one it is.
>
>
>H.J.
>
>
I could find 2 libraries defining/referring this symbol and one of them
returned result for the above nm command. I would try and figure out on
how this shared object file was compiled so that we can change it.
Thanks for your help on this so far.
Regards
Vijay
More information about the Binutils
mailing list