Recently I had to install Oracle Internet Directory (OID) and Oracle Access Manager (OAM) both in 184.108.40.206 on a Red Hat 8 for new QA and PRODUCTION environments. The installation of the OID 220.127.116.11 failed on packages prerequisites check. It complained about missing packages that do not exist anymore in Red Hat 8 or in Oracle Linux 8 either.
Checking for compat-libcap1-1.10; Not found. Failed Checking for compat-libstdc++-33-3.2.3-x86_64; Not found. Failed
Both compat-libstdc++-33-3.2.3-x86 and compat-libcap1-1.10 do not exist anymore in Red hat 8.
The Oracle certification matrix gives Red Hat 8 and Oracle Linux 8 for ALL Fusion Middleware products including Oracle Identity and Access Management (Oracle Access Management, Oracle Identity Manager, Oracle Internet Directory, Oracle Unified Directory).
After a few researches, I came on the Oracle support note below that explained that the Oracle Installer is still checking the Red Hat 7 requirements instead of the 8 ones.
Installation of Fusion Middleware 18.104.22.168.0 Distributions on Red Hat Linux or Oracle Linux Version 8 Fail Checking EL7 Package Requirements (Doc ID 2652061.1)
So far so good, I downloaded the patch and tried again to install the OID 22.214.171.124 with the following command line as described in the patch Readme file.
cd /u00/download-soft-oracle/oid_126.96.36.199/ ./fmw_188.8.131.52.0_oid_linux64.bin -prereqConfigLoc /u00/download-soft-oracle/fmw_redhat8_patch/31190532/prereq_metadata/oracle.as.install.oid.prerequisite/prereq
This time the prerequisites check were successful
The installation still failed but later in the linking phase
The log file showed:
[2021-03-30T16:15:30.052+02:00] [sysman] [NOTIFICATION]  [oracle.sysman.oii.oiix.OiixSpawner] [host: myhost.com] [nwaddr: 10.10.10.10] [tid: 13042] [userId: oracle] [ecid: 0000NY3VKjzFc5WFLzNM8A1WOn5U00000M,0] fmw_oid/lib/sysliblist` -lrt -lresolv -Wl,-rpath,/u00/app/oracle/product/fmw_oid/opmn/lib:/u00/app/oracle/product/fmw_oid/lib:/u00/app/oracle/product/fmw_oid/jdk/jre/lib/amd64/server:/u00/app/oracle/product/fmw_oid/jdk/jre/lib/amd64:/u00/app/oracle/product/fmw_oid/opmn/lib:/u00/app/oracle/product/fmw_oid/oracle_common/lib /u00/app/oracle/product/fmw_oid/lib/libclntsh.so -lons -lnnz12 [[ ]] [2021-03-30T16:15:30.312+02:00] [sysman] [NOTIFICATION]  [oracle.sysman.oii.oiix.OiixSpawner] [host: nyhost.com] [nwaddr: 10.10.10.10] [tid: 13043] [userId: oracle] [ecid: 0000NY3VKo8Fc5WFLzNM8A1WOn5U00000N,0] /usr/bin/ld: cannot find -lnsl[[ collect2: error: ld returned 1 exit status ]] [2021-03-30T16:15:30.312+02:00] [sysman] [NOTIFICATION]  [oracle.sysman.oii.oiix.OiixSpawner] [host: myhost.com] [nwaddr: 10.10.10.10] [tid: 13043] [userId: oracle] [ecid: 0000NY3VKo8Fc5WFLzNM8A1WOn5U00000N,0] make: *** [/u00/app/oracle/product/fmw_oid/ldap/lib/ins_ldap.mk:96: oiddispd] Error 1[[ ]]
The only way to continue the installation was to ignore the error.
After some investigation, we found out that to issue the code link, the libnsl.x86_64 package is not enough and libnsl2-devel.x86_64 one is needed. The libnsl2-devel.x86_64 is not in the Fusion Middleware Operating System requirements for Red Hat Linux 8.
To rerun the link of the product, the following command had to be used
export ORACLE_HOME=/u00/app/oracle/product/fmw_oid/ make -f /u00/app/oracle/product/fmw_oid/ldap/lib/ins_ldap.mk ORACLE_HOME=/u00/app/oracle/product/fmw_oid/ install
After the relink, the Oracle Internet Directory server could be started correctly and all associated tools were working as expected.
Note: The same Oracle patch for Red Hat Linux 8 installation has to be used for all Oracle Fusion Middleware products. Only the value of the prerequisite parameter (prereqConfigLoc) changes. Consult the patch Readme for the values.