Applying 10.2.0.4.0 PATCHSET gives the following error :-
During the relink phase for tnslsnr executable you are receiving the bellow error:
INFO: gcc -m64 -o tnslsnr -L/opt/oracle/product/10.2/db/network/lib/ -L/opt/oracle/product/10.2/db/lib/ -L/opt/oracle/product/10.2/db/lib//stubs /opt/oracle/product/10.2/db/network/lib/s0nsgl.o /opt/oracle/product/10.2/d..... /opt/oracle/product/10.2/db/lib/sysliblist`
INFO: /lib64/libcrypt.so.1: undefined reference to `snprintf@GLIBC_2.4'
collect2: ld returned 1 exit status
INFO: make: *** [tnslsnr] Error 1
Solution to this problem is that
1. Install the Oracle 10.2.0.4 patchset and ignore this relink error
2. Take a backup of the file $ORACLE_HOME/network/lib/env_network.mk
$ cp $ORACLE_HOME/network/lib/env_network.mk $ORACLE_HOME/network/lib/env_network.mk.orig3. open for edit the file $ORACLE_HOME/network/lib/env_network.mk and identify the following line:
TNSLSNR_LINKLINE+=$(SYSLIBS)
4. add above the line TNSLSNR_LINKLINE+=$(SYSLIBS) the following entry:
LLIBCRYPT = -lcrypt 5. modify the entry TNSLSNR_LINKLINE+=$(SYSLIBS) as bellow:
from
TNSLSNR_LINKLINE+=$(SYSLIBS)
to
TNSLSNR_LINKLINE+=$(SYSLIBS) $(LLIBCRYPT)
Regenerate the lsnrctl file using the following procedure
$cd $ORACLE_HOME/network/lib
$make -f ins_net_server.mk ilsnrctl
$cd $ORACLE_HOME/bin
$ls -la lsnrctl Make sure that lsnrclt file is regenerated.
Cheers!!!
No comments:
Post a Comment