Microsoft KB Archive/38896

From BetaArchive Wiki

LINK “No Stack Segment” Creating Dynamic-Linked EXTFH.EXE

PSS ID Number: Q38896 Article last modified on 04-20-1993

3.00 3.00a 4.00 | 3.00 3.00a 4.00 MS-DOS | OS/2

The information in this article applies to:
- Microsoft COBOL for MS-DOS and OS/2, versions 3.0, 3.0a, and 4.0

Summary: Creating EXTFH.EXE (the dynamically-linked, external file handler support file) can be accomplished as follows in COBOL version 3.0: LINK EXTFH.OBJ; However, when attempting to create EXTFH.EXE in COBOL version 3.0a, this method will return with many LINKer errors, which are first labeled with the following: LINK : warning L4021: no stack segment This problem also occurs in Microsoft COBOL Professional Development System version 4.0 for MS-DOS and MS OS/2. Microsoft is researching this problem and will post new information here as it becomes available.

More Information: This subject is covered in the README.DOC file for version 3.0a (on about line 600) under the “Dynamic linking of System Programs (Chapter 4)” header. The EXTFH.OBJ support file needs to be linked specifying the necessary LIBRARY. The earlier version, Microsoft COBOL version 3.0, does not require specifying the LIBRARY. There are two ways to specify the necessary LIBRARY in COBOL version 3.0a. They are as follows: 1. Create the EXTHF.EXE manually and include the necessary LCOBOL.LIB in the LINK step. The command line appears as follows: LINK EXTFH.OBJ,,,LCOBOL.LIB; 2. Statically link the EXTFH.OBJ support file directly into your program after it has been compiled. The command line appears as follows: LINK progname+EXTFH.OBJ;

Additional reference words: 3.00 3.00a 4.00 Copyright Microsoft Corporation 1993.