Hi,
i just tried to install DBD::Oracle 1.80 on RHEL 8 and the make command
failes.
gcc -lpthread -shared -Wl,-z,relro -Wl,-z,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld -L/usr/local/lib
-fstack-protector-strong Oracle.o dbdimp.o oci8.o -o
blib/arch/auto/DBD/Oracle/Oracle.so \
-L/db/main/oraclient193/lib -lclntsh -ldl -lm -lpthread -lnsl -lirc
-limf -lirc -lrt -laio -lresolv -lsvml -lperl \
*/usr/bin/ld: cannot find -lnsl*
collect2: error: ld returned 1 exit status
make: *** [Makefile:524: blib/arch/auto/DBD/Oracle/Oracle.so] Error 1
A little research and comparing to RHEL 7 shows the problem.
*RHEL7:*
ll /usr/lib64/libnsl*
-rwxr-xr-x 1 root root 115816 Jan 22 06:19 /usr/lib64/libnsl-2.17.so
*lrwxrwxrwx 1 root root 23 May 5 06:05 /usr/lib64/libnsl.so ->
../../lib64/libnsl.so.1*
lrwxrwxrwx 1 root root 14 May 5 06:00 /usr/lib64/libnsl.so.1 ->
libnsl-2.17.so
RHEL8:
ll /usr/lib64/libnsl*
-rwxr-xr-x 1 root root 163520 Jan 16 21:40 /usr/lib64/libnsl-2.28.so
lrwxrwxrwx 1 root root 14 Jan 16 21:29 /usr/lib64/libnsl.so.1 ->
libnsl-2.28.so
lrwxrwxrwx. 1 root root 15 Aug 12 2018 /usr/lib64/libnsl.so.2 ->
libnsl.so.2.0.0
-rwxr-xr-x. 1 root root 116408 Aug 12 2018 /usr/lib64/libnsl.so.2.0.0
So the softlink is */usr/lib64/libnsl.so* missing in RHEl8. Everything
compiles if I add the softlink, but I'm not sure if this is a good idea.
Should that not be fixed inside the Makefile.PL or so?
Any hints are welcome
Regards
Oliver