Building Domino C-API applications for RHEL/CentOS 8 - Lib dependency
Daniel Nashed – 16 January 2020 22:35:17
Now that Domino 11 officially supports RHEL/CentOS 8.x I am testing my applications.
I ran into a changed lib version for Domino C-API applications which compile and link with makefiles derived from the examples shipped with the SDK.
Those examples use the lib "-lnsl".
RHEL/CentOS 8 changed libnsl.so to a new version (libnsl.so.1 --> libnsl.so.2).
The lib is usually not needed for most applications unless you are using cetain TCP/IP operations as far I found out.
The error you see, when starting the application is the following:
/opt/hcl/domino/notes/latest/linux/nshtest: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory
So when building your applications you can usually remove the dependency.
Domino itself doesn't have the dependency.
Just to remind you: The support build environment for Domino 10 and Domino 11 on Linux is still CentOS 7.4 with the gcc/gcc++ compiler shipped with that version!
This is a about the run-time environment and the changed lib dependencies. And again, this is only for specific add-on applications.
I added the exact error message to let Google to pick it up...
Here is the original link line form the examples:
# set LIBS to list all the libraries ld should link with.
LIBS = -lnotes -lm -lnsl -lc -ldl -lpthread -lresolv
Here are the libs installed by default:
RHEL 7
/usr/lib64/libnsl.so.1
/usr/lib64/libnsl.so
RHEL 8
/usr/lib64/libnsl.so.2
/usr/lib64/libnsl.so.2.0.0
- Comments [3]