In this Document
Symptoms
Changes
Cause
Solution
References
This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.
|
Applies to:
Oracle Server – Enterprise Edition – Version: 9.2.0.1 to 11.1.0.6 – Release: 9.2 to 11.1
IBM AIX on POWER Systems (64-bit)
AIX5L Based Systems (64-bit)
This problem will affect 9.2, 10.2 and 11g when applying any one off patch or patchset.
***Checked for relevance on 01-Aug-2010***
Symptoms
Applying Patch Fails with 'xlC: not found' on File 'genoccish'
/opt/oracle/product/10.2.0.3/bin/genoccish[82]: xlC: not found
ar: No such file or directory
ar: 0707-117 The fopen system call failed on file /opt/oracle/product/10.2.0.3/lib/shr.o.
/opt/oracle/product/10.2.0.3/bin/genoccish[82]: xlC: not found
ar: No such file or directory
ar: 0707-117 The fopen system call failed on file /opt/oracle/product/10.2.0.3/lib32/shr.o.
Changes
This problem will affect 9.2, 10.2 and 11g when applying any one off patch or patchset.
Cause
It looks like IBM renamed the xlC executable to xlc with version 8
My admin assures me it is installed and available but the genoccish
script is hard coded to an upper case 'C'
You can check this with the following commands:
$ lslpp -l | grep xlC
xlC.adt.include 8.0.0.9 COMMITTED C Set ++ Application
xlC.aix50.rte 8.0.0.9 APPLIED C Set ++ Runtime for AIX 5.0
xlC.cpp 6.0.0.0 COMMITTED C for AIX Preprocessor
xlC.msg.EN_US.cpp 6.0.0.0 COMMITTED C for AIX Preprocessor
xlC.msg.EN_US.rte 6.0.0.0 COMMITTED C Set ++ Runtime
xlC.msg.en_US.cpp 6.0.0.0 COMMITTED C for AIX Preprocessor
xlC.msg.en_US.rte 8.0.0.9 APPLIED C Set ++ Runtime
xlC.rte 8.0.0.9 APPLIED C Set ++ Runtime
$ which xlc
/usr/vac/bin/xlc
$ which xlC
no xlC in /usr/bin /etc /usr/sbin /usr/ucb /usr/bin/X11 /sbin /usr/java14/jre/bin /usr/java14/bin /usr/ccs/bin /usr/vac/bin
Solution
1. Set the xlC permissions such that the 'oracle' user can execute this compiler.
2. After including "/usr/vacpp/bin" to $PATH, xlC warning disappeared
You can check this with the command
which xlC
This should return that it has found it in your $PATH.
NOTE: The following step is optional and is creating a link to the new compiler if needed.
ln -s /usr/vac/bin/xlc /usr/vac/bin/xlC
3. The symbolic link will allow the compiler to be found as xlc or xlC
Execute $ORACLE_HOME/bin/genoccish
4. Re-apply the patch or patchset.