Friday, 3 March 2017

Error in invoking 'ntcontab.o' of makefile while installing 11gr2 client on Linux x86-64 bit server (Doc ID 1313504.1)

In this Document

APPLIES TO:
Oracle Database - Enterprise Edition - Version 11.2.0.1 and later
Generic UNIX
***Checked for relevance on 16-Dec-2013***
SYMPTOMS
While installing 11gr2 (11.2.0.x) 64 bit client on a Linux x86-64 bit server the following errors occur during the relink phase of installation:

Errors similar to the following will be displayed:

INFO: Start output from spawned process:
INFO: ----------------------------------
INFO:

INFO: rm -f ntcontab.*

INFO: (if [ "compile" = "compile" ] ; then \
/u03/oracle/ovop02db/11.2.0/bin/gennttab > ntcontab.c ;\
gcc -m64 -c ntcontab.c ;\
rm -f /u03/oracle/ovop02db/11.2.0/lib/ntcontab.o ;\
mv ntcontab.o /u03/oracle/ovop02db/11.2.0/lib/ ;\
/usr/bin/ar rv /u03/oracle/ovop02db/11.2.0/lib/libn11.a /u03/oracle/ovop02db/11.2.0/lib/ntcontab.o ; fi)

INFO: gcc: error trying to exec 'cc1': execvp:
INFO: No such file or directory

INFO: mv:
INFO: cannot stat `ntcontab.o': No such file or directory

INFO: /usr/bin/ar: /u03/oracle/ovop02db/11.2.0/lib/ntcontab.o: No such file or directory

INFO: make: *** [ntcontab.o] Error 1

INFO: End output from spawned process.

NFO: ----------------------------------
INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target 'mkldflags ntcontab.o nnfgt.o' of makefile

'/u03/oracle/ovop02db/11.2.0/network/lib/ins_net_client.mk'. See '/u03/oraInventory/logs/installActions2011-04-12_02-27-25AM.log'

for details.
Exception Severity: 1
INFO: Calling Action unixActions10.2.0.3.0 make
registerOnly = false
installMakePath = /usr/bin/make
installMakeFileName = /u03/oracle/ovop02db/11.2.0/rdbms/lib/ins_rdbms.mk
installTarget = client_sharedlib
undoMakeFileName =
installArguments = ORACLE_HOME=/u03/oracle/ovop02db/11.2.0
logFile = /u03/oracle/ovop02db/11.2.0/install/make.log
undoTarget =
progMsg = Building Client Shared Libraries

INFO: Building Client Shared Libraries
INFO: Building Client Shared Libraries
INFO: The output of this make operation is also available at: '/u03/oracle/ovop02db/11.2.0/install/make.log'
INFO:
All the required RPM's are installed as per:

Requirements for Installing Oracle 11gR2 RDBMS on RHEL (and OEL) 5 on AMD64/EM64T (Doc ID 880989.1)
CAUSE
This is because the gcc used by the installer to relink the binaries is 32bit which should not be the case while installing 64bit software.
SOLUTION
Query the following :
1. : gcc -v

The output displayed is:

Using built-in specs.
Target: i386-redhat-linux

The actual output should be:

gcc -v
Using built-in specs.
Target: x86_64-redhat-linux

64 bit gcc should be picked up by the installer .

Before doing the install check that 64 bit gcc is installed and in use.
2.  : rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | grep gcc

Output should show:
gcc-4.4.6-4.el6 (x86_64)
gcc-c++-4.4.6-4.el6 (x86_64)

3. : ls -ltr /usr/lib/gcc/x86_64-redhat-linux

4. Else, point the gcc to use 64 bit version by creating a link:
: ln -s /usr/bin/x86_64-redhat-linux-gcc /usr/bin/gcc

: ln -s /usr/bin/x86_64-redhat-linux-g++ /usr/bin/g++

REFERENCES
NOTE:444084.1 - Multiple gcc / g++ Versions in Linux
NOTE:880989.1 - Requirements for Installing Oracle 11gR2 RDBMS on RHEL (and OEL) 5 on AMD64/EM64T

No comments:

Post a Comment