Monday, August 18, 2014

Relinek apps executable file

1. Relink the AutoInvoice Master program (report) as follows: (refer to Doc ID 1209514.1)

a) Log into the Operating System as APPLMGR (on CM node)
b) $ cd $AR_TOP/bin
c) Make a backup copy on file RAXMTR
d) Make sure that Autoinvoice is not running (by checking concurrent jobs)
e) Run the relink script
    $ adrelink.sh force=y ranlib=y "ar RAXMTR"
 
=====log on the screen ==============================
  .....
  Done with link of ar executable 'RAXMTR' on Fri Jul 18 12:51:41 EDT 2014
  Done relinking module RAXMTR in product ar
  Done with link of product 'ar' on Fri Jul 18 12:51:41 EDT 2014
  adrelink is exiting with status 0
  End of adrelink session
  Date/time is Fri Jul 18 12:51:41 EDT 2014

2. To relink 10.1.2 reports executables:
a) $ cd $ORACLE_HOME/reports/lib (or $ORACLE_HOME/reports/lib32)
b) $ make -f ins_reports.mk install

3.To relink 10.1.2 forms executables:
a) $ cd $ORACLE_HOME/forms/lib (or $ORACLE_HOME/forms/lib32)
b) $ make -f ins_forms.mk install

4. Use adadmin to relink all apps programs
   choices:  2 => 1
    If all worked, you will see " adrelink is exiting with status 0 " at the end.
    Log file is $APPL_TOP/admin/${TWO_TASK}/log/adrelink.log

5. Regenerate the jar files with force:
 $ adadmin
   1 => 4. Make sure that you choose force equals Yes.

NOTES/UPDATES
1: Oracle usually suggests "regenerate the jar files with force" after "relink" all form excutables.

2: If below errors exist in the make log file:
    /usr/lib/libXtst.so.6: undefined reference to `__stack_chk_fail@GLIBC_2.4'
    /usr/lib/libXtst.so.6: undefined reference to `__fprintf_chk@GLIBC_2.3.4'
    /usr/lib/libXtst.so.6: undefined reference to `__sprintf_chk@GLIBC_2.3.4'

The fix is to update a required link to a Motif library (as root)
  # unlink /usr/lib/libXtst.so.6
  # ln -s /usr/X11R6/lib/libXtst.so.6.1 /usr/lib/libXtst.so.6

Before the change
$ ls -al /usr/lib/libXtst.so.6
lrwxrwxrwx 1 root root 16 Oct 11  2012 /usr/lib/libXtst.so.6 -> libXtst.so.6.1.0

After the fix, the result shall be
$ ls -al /usr/lib/libXtst.so.6
lrwxrwxrwx 1 root root 29 Jun 18 2014 /usr/lib/libXtst.so.6 -> /usr/X11R6/lib/libXtst.so.6.1
$ ls -al /usr/X11R6/lib/libXtst*
lrwxrwxrwx 1 root root    14 Oct 18  2011 /usr/X11R6/lib/libXtst.so -> libXtst.so.6.1
lrwxrwxrwx 1 root root    14 Oct 18  2011 /usr/X11R6/lib/libXtst.so.6 -> libXtst.so.6.1
-rwxr-xr-x 1 root root 17204 Feb 26  2008 /usr/X11R6/lib/libXtst.so.6.1


3: On Linux RHEL 6 and 7, R12.1 adadmin relink and/or adpatch may hit error
    libgcc_s.so: undefined reference to `__stack_chk_fail@GLIBC_2.4'

The fix is to apply patch 12415211 to 10.1.2 AND 10.1.3 ORACLE HOMES manually (see Doc ID 1525823.1). Below script shall do the job.

#!/bin/ksh
# Steps from Doc ID 761566.1 - search keyword 12415211 (patch number)
# copy file libgcc_s-2.3.2-stub.so from patch folder (
$HOME/RHEL6 in this script) to 
# $ORACLE_HOME/lib/stubs and $IAS_ORACLE_HOME/lib/stubs

echo $ORACLE_HOME
cd $ORACLE_HOME/lib
cp -p -R stubs stubsORIG_`date +%H%M`
pwd
cd stubs
ls -al libgcc_s-2.3.2-stub.so*
cp -p $HOME/RHEL6/libgcc_s-2.3.2-stub.so .
ln -s libgcc_s-2.3.2-stub.so libgcc_s.so.1
ln -s libgcc_s.so.1 libgcc_s.so
ls -al libgcc_s*.*

# -rw-r--r-- 1 id xxx 12246 Jul 27  2011
$ORACLE_HOME/lib/stubs/libgcc_s-2.3.2-stub.so
# lrwxrwxrwx 1 id xxx  13 Jun  2 16:32
$ORACLE_HOME/lib/stubs/libgcc_s.so -> libgcc_s.so.1
# lrwxrwxrwx 1 if xxx  22 Jun  2 16:32
$ORACLE_HOME/lib/stubs/libgcc_s.so.1 -> libgcc_s-2.3.2-stub.so
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo $IAS_ORACLE_HOME
cd $IAS_ORACLE_HOME/lib

cp -p -R stubs stubsORIG_`date +%H%M`
pwd
cd stubs
ls -al libgcc_s-2.3.2-stub.so*
cp -p $HOME/RHEL6/libgcc_s-2.3.2-stub.so .
ln -s libgcc_s-2.3.2-stub.so libgcc_s.so.1
ln -s libgcc_s.so.1 libgcc_s.so
ls -al libgcc_s*.*


4: One day, after I applied patches to ORACLE HOMEs and applied an AR patch, some AR forms hang and get frozen forever without any error or warning message. The issue was fixed by running steps 3 and 5 above (on each Web node).


No comments: