Thursday, July 19, 2018

Could not locate shrept.lst make: *** [client_sharedlib] Error 1

 Installing the quarterly database patch i got unpleasant message :

"
Patching component oracle.sdo, 12.2.0.1.0...
Make failed to invoke "/usr/bin/make -f ins_rdbms.mk client_sharedlib ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1"....'genclntsh: genclntsh: Could not locate  /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/shrept.lst
make: *** [client_sharedlib] Error 1
'
Make failed to invoke "/usr/bin/make -f ins_net_client.mk client_sharedlib ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1"....'genclntsh: genclntsh: Could not locate  /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/shrept.lst
make: *** [client_sharedlib] Error 1
'
Make failed to invoke "/usr/bin/make -f ins_ldap.mk ldapsearch ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1"....'genclntsh: genclntsh: Could not locate  /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/shrept.lst
make: *** [/u01/app/oracle/product/12.2.0/dbhome_1/lib/libclntsh.so] Error 1
'

The following make actions have failed :

Re-link fails on target "client_sharedlib".
Re-link fails on target "client_sharedlib".
Re-link fails on target "ldapsearch".


Do you want to proceed? [y|n] y
User Responded with: Y
Patch 28163133 successfully applied.
Sub-set patch [27674384] has become inactive due to the application of a super-set patch [28163133].
Please refer to Doc ID 2161861.1 for any possible further required actions.
OPatch Session completed with warnings.
Log file location: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2018-07-19_10-40-25AM_1.log

OPatch completed with warnings.
"


The reason of this error is obvious: i removed shrept.lst file from $OH/network/admin some time ago.

MOS note make advice to copy this file from similar $OH, but i have no similar $OH near me.

The solution was found to extract the shrept.lst  file from Database Installation Media file, in my case it is linuxx64_12201_database.zip .

1. Unzip linuxx64_12201_database.zip and go to directory
database/stage/Components/oracle.rdbms.rsf/12.2.0.1.0/1/DataFiles/

Here are 3 files :


 
2. The jar - is a zip-archive, so we can unzip it and search the shrept.lst in it
[oracle@oel6 DataFiles]$ unzip filegroup1.jar filegroup2.jar filegroup3.jar
[oracle@oel6 DataFiles]$ find . -name shrept*
./plsql/admin/shrept.lst
./shrept.lst
./rdbms/admin/shrept.lst

[oracle@oel6 DataFiles]$ ls -l ./plsql/admin/shrept.lst ./shrept.lst ./rdbms/admin/shrept.lst
-rw-r--r-- 1 oracle oinstall    72 Apr 15  1998 ./plsql/admin/shrept.lst
-rw-r--r-- 1 oracle oinstall 50099 May  5  2016 ./rdbms/admin/shrept.lst
-rwxr-x--- 1 oracle oinstall 50099 Jul 19 11:22 ./shrept.lst

The plsql is not our case.
It seems both last 2 files are the same. So make the copy and relink:
$ cp ./shrept.lst $OH/network/admin
$ cd $OH/bin
$ ./relink all

And now relink work well !
:)

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.

How to disable/setup autostart parameters for specified instance ?

Q: We have a 4-node RAC. I need to disable autostart of the DB on one node only.    How to do it and how to see autostart parameters, confir...