How the linker resolves references to shared libraries

When you compile a program, the compiler generates an object module for the code in the program. If you call any subprograms (functions in C/C++, subroutines in other languages) that are in an external object module, the compiler adds an external program reference to the target object module.

To resolve an external reference to a shared library, the linker adds information to the executable file that tells the loader where to find the shared library code when the executable file is loaded.

The linker does not resolve all references to shared libraries that are made by COBOL CALL statements. If the DYNAM compiler option is in effect, COBOL resolves CALL literal statements when these calls are executed. CALL identifier calls are also dynamically resolved.

Example: creating a sample shared library

Related references  
Linker input and output files
DYNAM