COBOL Manual for TNS and TNS/R Programs

Libraries and Utility Routines
HP COBOL Manual for TNS and TNS/R Programs522555-006
13-18
Building a DLL from Multiple Source Files
2. Link the linkfiles into a single loadfile, using the ld utility with these options:
Either:
°
-export_all, which exports all program names in the source file
°
-export program-name, which exports only the specified program
name. You must repeat this option for every program name that you want
to export.
-shared, which links the linkfiles into a single loadfile that is a DLL
-optional_lib followed by:
°
-L lib-directory -lcob, which links your file with the SRL named
ZCOBSRL
°
-obey lib-directory\libc.obey, which links your file with the SRL
named ZCRESRL
lib-directory is the name of the directory of libraries.
In Example 13-9, the first four commands compile four source files (lib1.cob,
lib2.cob, lib3.cob, and lib4.cob), creating four linkable object files (lib1.o,
lib2.o, lib3.o, and lib4.o). The last command links the four linkable object files
with the SRLs named ZCOBSRL and ZCRESRL, creating a DLL named mydll.
Example 13-9. Building a DLL From Multiple Source Files (PC)
nmcobol lib1.cob -Wshared -c
nmcobol lib2.cob -Wshared -c
nmcobol lib3.cob -Wshared -c
nmcobol lib4.cob -Wshared -c
ld lib1.o lib2.o lib3.o lib4.o -shared -export_all -optional_lib
-L lib-directory -lcob -obey lib-directory\libc.obey -o mydll