转载自
Solaris and Oracle 32bit Linking Error "fatal: symbol 'ntcontab'
in file $O_H/lib/libn10.a(ntcontab.o): section [3].data: : symbol lies
outside of containing section" [ID 1364167.1]
修改时间 12-OCT-2011 类型 PROBLEM 状态 MODERATED
In this Document
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: 10.1.0.2 to 10.2.0.5 - Release: 10.1 to 10.2
Oracle Server - Standard Edition - Version: 10.1.0.2 to 10.2.0.5 [Release: 10.1 to 10.2]
Oracle Solaris on x86 (32-bit)
Oracle Solaris on x86-64 (64-bit)
This issue is currently known to affect only the 32bit version of Oracle Software on the following platforms
Solaris x86
Solaris x86-64
Where OS patch 144501-19 has been installed
or in the latest Solaris builds
Solaris 11 [Nevada]
or
Solaris 10 Update 10 and above ( Solaris 10 8/11 )Symptoms
When doing a new install or applying a patch of 32bit Oracle software on a server that meets the following criteria
Solaris x86
Solaris x86-64
Where OS patch 144501-19 has been installed
or in the latest Solaris builds
Solaris 11 [Nevada]
or
Solaris 10 Update 10 and above ( Solaris 10 8/11 )
The following error is seen during link phase:
excerpt from $ORACLE_HOME/install/make.log
INFO: Start output from spawned process:
INFO: ----------------------------------
INFO:
INFO: /export/home/oracle/sw/11g/bin/genclntsh
INFO: ld: fatal: symbol 'ntcontab' in file
/export/home/oracle/sw/11g/lib/libn10.a(ntcontab.o): section [3].data: size
0x60: symbol (address 0, size 0x70) lies
outside of containing section
INFO: ld: fatal: file processing errors. No output written to
/export/home/oracle/sw/11g/lib/libclntsh.so.10.1
INFO: genclntsh: Failed to link libclntsh.so.10.1
INFO: make: Fatal error: Command failed for target `client_sharedlib
INFO: '
INFO: *** Error code 1
Cause
Unpublished bug:
Bug 6791866 - ASSEMBLER CODE GENERATED BY GENNTTAB CAUSES LD ERROR IN LATEST SOLARIS BUILDS
Which states:
Always in the latest Solaris builds
Solaris 11 [Nevada]
and
Solaris 10 Update 10 and above ( Solaris 10 8/11 )
due to stricter integrity checking in the linker (ld)
or
OS patch 144501-19 installed.
Solution
For versions 10.1.x through 10.2.0.x use the following workaround
If
this occurs during an installation of the base release or patchset, you
will get a pop-up for the link error providing the following options,
'Retry or Continue'. Leave this popup and login to a new session as the
owner of the ORACLE_HOME, and complete the following:
1. cd $ORACLE_HOME/bin
2. cp gennttab gennttab_orig
3. edit gennttab
change
ntcontab:
.type ntcontab,@object
.size ntcontab,112
.align 4
to
ntcontab:
.type ntcontab,@object
.size ntcontab,96
.align 4
4. cd $ORACLE_HOME/network/lib
execute command
/usr/ccs/bin/make -f ins_net_client.mk ntcontab.o
execute command
$ORACLE_HOME/bin/genclntsh
5.
If this error occurred during an installation of base release or
patchset and you received the pop-up described above, click on 'Retry'
and the link error should resolve itself.
6. If this error
occurred during a patching installation via opatch utility then complete
the following after doing steps 1-4 above
relink Oracle
relink all > relink.txt 2>&1
7. review the relink.txt file for errors
相关内容
产品
Oracle Database Products > Oracle Database > Oracle Database > Oracle Server - Standard Edition
Oracle Database Products > Oracle Database > Oracle Database > Oracle Server - Enterprise Edition
关键字
GENCLNTSH; INSTALL & CONFIGURE; INSTALL; NTCONTAB.O; RELINK ALL; SOLARIS