二.MOS上部分解決方法
對第一部分列出的問題,這裡從MOS上摘取2個的解決方案。
2.1 Ins_net_client.Mk問題一
MOS 文章:
'Error In Invoking Target Ntcontab.o OfMakefile Ins_net_client.Mk' [ID 341621.1]
2.1.1 Symptoms
A popuperror occurs during the installation of the Oracle9i R2 Client (9.2.0.1)on Sun Solaris 5.9 (64-bit).
Popup error message:
Error in invoking target ntcontab.o of makefile ins_net_client.mk
2.1.2 Cause
Expected defaultSun Solaris installed utilities (from Sun Packages) not present in /usr/ccs/bindirectory.
Instead thefollowing utilities were symbolically linked to other provider (packaged)utilities and/or renamed in the '/usr/ccs/bin' directory:
/usr/ccs/bin/ar >> was symbolically linked to /software/binutils/bin/ar(original ar was
moved ot a new name)
/usr/ccs/bin/as >> was moved to a new name
/usr/ccs/bin/ld >> was symbolically linked to software/binutils/bin/ld(original ld was
moved ot a new name)
Investigation with System Administrator.
2.1.3 Solution
To implement the solution, please executethe following steps:
1. Request the System Administrator remove the symbolic links and restore theexpected default Sun Solaris installed utilities (at least long enough tocomplete the Oracle Client installation and relinking.
2. Once in place, run the Oracle9i R2 Client installation, or manually relinkthe Oracle Client:
--手工relink Oracle client
Run:
cd $ORACLE_HOME/network/lib
make -f ins_net_client.mk nnfgt.o
make -f ins_net_client.mk ntcontab.o
make -f ins_net_client.mk client_sharedlib
make -f ins_net_client.mk install
cd $ORACLE_HOME/sqlplus/lib
make -f ins_sqlplus.mk install
cd $ORACLE_HOME/bin
relink client
2.2 Ins_net_client.Mk問題二
MOS 文章:
Installing OracleAS on a Linux 64bit: Errorin invoking target ntcontab.o of makefile ins_net_client.mk [ID 400301.1]
2.2.1 Symptoms
While installingthe Application Server 10.1.2.0.2 on a Linux 64 bit distribution (e.g.RedHat 4.0 64bit) the following error may be raised in a pop up windowwhen the Universal Installer starts linking the binaries:
Error ininvoking target 'ntcontab.o' of makefile'/myoraclehome/network/lib/ins_net_client.mk'
The error may beraised by any installation type (Infrastructure, Metadata Repository, IdentityManagement, Midtiers).
2.2.2 Changes
Toinstall the Application Server 10.1.2.0.2 in a Linux 64bit O/S we need totailor the environment so the gcc compiler works as a 32bitcompiler. By default the gcc compiler bundled with the Linux x86 64bitdistributions works in 64bit mode.
2.2.3 Cause
There were 2 issues preventing thecompilation:
1) The /usr/bin/gcc compiler need to bewrapped to compile in 32bit mode and pick up the crt1.o file
2) The /usr/lib/crt1.o file was missing.
2.2.4 Solution
Firstly review the advice given in:
Note:377359.1 HandlingOracle Application Server 10g Relinking Errors on Redhat and SUSE 64-bit Linux
If the advice in this note does not lead to a solution,try the work-around steps given below.
1) Create ashell script /usr/bin/gcc containing the following entries. Note the scriptwill differ depending on the gcc version. Create a different shell scriptdepending on the gccNN version:
For gcc32:
#!/bin/sh
exec /usr/bin/gcc32 -m32 -static -libgcc -B/usr/lib/ "$@"
For gcc33:
#!/bin/sh
exec /usr/bin/gcc33 -m32 -static -libgcc -B/usr/lib/ "$@"
For gcc34:
#!bin/sh
exec /usr/bin/gcc34 -m32 -static -libgcc -B/usr/lib-L/usr/lib/gcc/x86_64-redhat-linux/3.4.3/32 "$@"
2) Install the glibc-devel-2.3.4-2.25(32bit) RPM and verify you have /usr/lib/crt1.o afterwards
3) Verify libdb.so.2 is installedin the system. The file should be there if gnome-libs-1.4.1.2.90-34.1 (orlater) is installed:
rpm -qa |grep gnome-libs ==> Verifygnome-libs is there
rpm -ql gnome-libs-1.4.1.2.90-34.1| grep libdb ==> Verify libdb.so.2 isincluded in the rpm
4) Retry the failed relink and continue theinstallation.
2.3 ins_ctx.mk問題
MOS 文章:
Error in Invoking Target 'Install' of Makefile $ORACLE_HOME/ctx/lib/ins_ctx.mk [ID 362285.1]
2.3.1 Symptoms
While executingthe link phase of an Oracle Database Server installation on LINUX x86-64 thefollowing error occurs:
$ORACLE_HOME/bin/ctxhx fails to relink witherror
/usr/bin/ld: cannot find -lgcc_s_32
2.3.2 Cause
Missing required 32bit RPMs for:
libgcc
Per :
Note851598.1 Linux OS Requirements Reference List for Database Server
2.3.3 Solution
1. Check if you have the missing RPMinstalled. For example:
rpm -qa --queryformat"%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | grep libgcc
libgcc-4.1.2-48.el5 (x86_64) <<<64bit version
libgcc-4.1.2-48.el5 (i386) <<<32bit version
2. Install any missing RPM's per:
Note851598.1 Linux OS Requirements Reference List for Database Server
In this case libgcc-4.1.2-48.el5 (i386) <<<32bit version was missing.
3. Relink per
Note131321.1 How to Relink Oracle Database Software on UNIX/LINUX
for example:
% relink all > /tmp/relink.txt2>&1
4. Check relink.txt for errors
