You can link DLL-enabled object modules into separate DLL load modules, or you can link them together statically. You can decide whether to package the application as one module or as several DLL modules at link time.
The DLL support in the z/OS binder is recommended for linking DLL applications. The binder can directly receive the output of COBOL compilers, thus eliminating the prelink step. However, you must use the Language Environment prelinker before standard linkage editing if your DLL must reside in a PDS load library.
A binder-based DLL must reside in a PDSE or in an HFS file rather than in a PDS.
When using the binder to link a DLL application, use the following options:
| Type of code | Link using binder parameters: |
|---|---|
| DLL applications | DYNAM(DLL), RENT |
| Applications that use
mixed-case exported program-names
Class definitions or INVOKE statements |
CASE(MIXED) |
You must specify a SYSDEFSD DD statement to indicate the data set in which the binder should create a DLL definition side file. This side file contains IMPORT control statements for each symbol exported by a DLL. The binder SYSLIN input (the binding code that references the DLL code) must include the DLL definition side files for DLLs that are to be referenced from the module being linked.
If there are programs in the module that you do not want to make available with DLL linkage, you can edit the definition side file to remove these programs.
Example: sample JCL for a procedural DLL application
related tasks
Creating a DLL under UNIX
Creating a DLL or a DLL application
Compiling programs to create DLLs
Prelinking certain DLLs
related references
MVS Program Management: User's Guide and Reference (Binder support for DLLs)