Troubleshooting The Relink Errors When Missing RPMs on Linux x86-64_786995.1

rongshiyuan發表於2014-03-18
Troubleshooting The Relink Errors When Missing RPMs on Linux x86-64 (Doc ID 786995.1)

In this Document

Purpose
Troubleshooting Steps
References

Applies to:

Oracle Database - Standard Edition - Version 9.2.0.1 and later
Oracle Database - Enterprise Edition - Version 9.2.0.1 and later
Linux x86-64
***Checked for relevance on 20-May-2013***

Purpose

It is common to have Relink errors on Linux because of missing RPMs. This document will help in determining what relink error will come when an RPM is missing on Linux x86-64 platform.

These errors can be found in oraInventory/logs/installActions.log files and $ORACLE_HOME/install/make.log when performing an installation using OUI and in opatch log files when applying a patch.

Troubleshooting Steps

Error :-

/usr/bin/ld: cannot find /usr/lib64/libc_nonshared.a

or

ld: skipping incompatible /usr/lib/libdl.so when searching for -ldl
ld: skipping incompatible /usr/lib/libdl.a when searching for -ldl
ld: cannot find -ldl

Affected Versions :-

9.2.0.x and 10.1.0.x on RHEL 3(x86-64) or RHEL 4(x86-64)

RPM missing :-

glibc-devel (64-bit)


Error :-

gcc: command not found


Affected Versions :-

9.2.0.x,10.1.0.x,10.2.0.x on RHEL3(x86-64)
10.1.0.x,10.2.0.x,11.1.0.x on RHEL4(x86-64)
10.2.0.x 11.2.0.x on RHEL5(x86-64)

RPM missing :-

gcc (64 bit)

Note :- Please Note that if this is 9.2 installation on RHEL4(x86-64) then missing RPM is "compat-gcc-32-3.2.3-47.3.x86_64.rpm"

 


Error :-

/usr/bin/make: No such file or directory

or

unable to find utility /usr/bin/make

or

relink: cannot execute the following commands
/usr/bin/make

Affected Versions :-

All certified combination of Oracle and Linux x86-64

RPM missing :-

make (64-bit)


Error :-

cannot find `ld'
ar: command not found

or

/usr/bin/ar: No such file or directory

Affected Versions:-

All certified combination of Oracle and Linux x86-64

RPM missing :-

binutils (64-bit)

 


Error :-

/usr/bin/ld: crt1.o: No such file: No such file or directory
collect2: ld returned 1 exit status

or

/usr/bin/ld: cannot open crti.o: No such file or directory


Affected Version :-

All certified combination of Oracle and Linux x86-64

RPM missing :-

glibc-devel (32 bit)

 

Error :-

/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../libpthread.so when searching for -lpthread
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../libpthread.a when searching for -lpthread
/usr/bin/ld: cannot find -lpthread
collect2: ld returned 1 exit status

Affected Version :-

10.2 on RHEL3(x86-64),RHEL4(x86-64) and RHEL5(x86-64)

RPM missing :-

glibc-devel (64 bit)

 


Error :-

gcc: /usr/lib64/libstdc++.so.5: No such file or directory
/bin/genorasdksh: Failed to link liborasdkbase.so.10.2
make: *** [liborasdkbase] Error 1

Affected Version :-

10.2 on RHEL3(x86-64),RHEL4(x86-64) and RHEL5(x86-64)

RPM missing :-

If OS is RHEL3(x86-64) then "libstdc++ (64-bit)" is missing

If OS is RHEL4(x86-64) or RHEL5(x86-64) then "compat-libstdc++-33-3.2.3 (64-bit)" is missing

 

Error :-

/usr/bin/ld: cannot find -lgcc_s_32
collect2: ld returned 1 exit status

Affected Versions :-

10.2 and 11.1 on RHEL4(x86-64) and RHEL5(x86-64)

RPM missing :-

libgcc (32-bit)

 

Error :-

ntcontab.c:7:23: sys/types.h: No such file or directory
mv: cannot stat `ntcontab.o': No such file or directory
/usr/bin/ar: make: *** [ntcontab.o] Error 1


Affected Versions :-

9.2,10.1,10.2,11.1 on RHEL4(x86-64)

RPM missing :-

glibc-headers (64-bit)

 


Error :-

/usr/bin/ld: cannot find /lib/libc.so.6
collect2: ld returned 1 exit status

Affected Version :-

10.2 RHEL5(x86-64)

RPM missing :-

glibc (i686))

 


Error :-

/usr/bin/ld: cannot find /usr/lib64/libpthread_nonshared.a
collect2: ld returned 1 exit status
genclntsh: Failed to link libclntsh.so.11.1

Affected Version :-

11.1 RHEL5(x86-64)

RPM missing :-

glibc-devel (64-bit)

 


Error :-

/bin/genoccish
libocci.so.11.1 not regenerated. g++ not found

Affected Version :-

11.1 RHEL5(x86-64)

RPM missing :-

gcc-c++ (64-bit)

 



Error :-

gcc: /usr/lib64/libstdc++.so.6: No such file or directory
/bin/genorasdksh: Failed to link liborasdkbase.so.11.1
make: *** [liborasdkbase] Error 1

Affected Version :-

11.1 RHEL4(x86-64)

RPM missing :-

libstdc++ (64-bit)


Please refer following My Oracle Support note to get the required versions of RPM

Note 851598.1 Linux x86, x86-64, and s390x Requirements Reference List:

NOTE
It may happen that the RPM is present on the system but linking errors still occur. In such situations ensure that the RPM installation is consistent and no dependent RPMs are missing.

Use the command "rpm -V " to check the integrity of RPM

For Example :

  

%rpm -V glibc
   Unsatisfied dependencies for glibc-2.3.2-95.20: glibc-common = 2.3.2-95.20



In the above example, "glibc-common" might be missing or inconsistent. Take corrective actions and install the missing RPMs/Dependent RPMS

Or its possible that one of the 2 32bit or 64bit RPM's are missing when both are required for some RPM's, in this case you can use the following query to differentiate between 32bit and 64bit versions:

% rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | grep glibc

glibc-2.3.4-2.43 (x86_64) 

References

NOTE:1156586.1 - Master Note For Oracle Database Server Installation
NOTE:131321.1 - How to Relink Oracle Database Software on UNIX
NOTE:1351051.2 - Information Center: Install and Configure Database Server/Client Installations
NOTE:851598.1 - Master Note of Linux OS Requirements for Database Server

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17252115/viewspace-1123878/,如需轉載,請註明出處,否則將追究法律責任。

相關文章