Microsoft KB Archive/26799

INCLUDELIB - Invalid Object Module Created ID Number: Q26799

5.00 MS-DOS buglist5.00 fixlist5.00a

Summary:

SYMPTOMS Microsoft Macro Assembler (MASM) version 5.0 may create an invalid object module due to incorrect usage of the INCLUDELIB directive. If a name longer than 127 characters is specified, the linker may hang or it will generate the error: fatal error L1101: invalid object module Although the linker can not handle a library name greater than 127 characters, the assembler should not generate an invalid object module that may cause the linker to hang.

STATUS Microsoft has confirmed this to be a problem in MASM version 5.0. This problem was corrected in MASM version 5.0a.

More Information:

The linker may generate the eror: fatal error L1022: response line too long This error may indicate that the library name in an INCLUDELIB statement was too long for the linker to handle.

Sample Code

 * Assemble options needed: none ; The 2 lines following the INCLUDELIB statement should be appended ; to the end of the INCLUDELIB statement. The INCLUDELIB statement in ; this example is broken into three lines for readability.

.MODEL small

INCLUDELIB subdir0

subdir5

libdir0.lib

.STACK 1024

.CODE start: mov ax, 4C00h int 21h

END start