0.8.1 LINK Fatal Errors

Number LINK Error Message

L1001 option : option name ambiguous
  A unique option name did not appear after the option indicator.
  An option is specified by a forward-slash indicator (/) and a name. The name can be specified by an abbreviation of the full name, but the abbreviation must be unambiguous.
  For example, many options begin with the letter N, so the following command causes this error:

LINK /N main;

L1003 /Q and /EXEPACK incompatible
  LINK cannot be given both the /Q option and the /EXEPACK option.
L1004 value : invalid numeric value
  An incorrect value appeared for a LINK option. For example, this error occurs when a character string is specified with an option that requires a numeric value.
L1005 option : packing limit exceeds 64K
  The value specified with the /PACKC or /PACKD option exceeded the limit of 65,536 bytes.
L1006 number : stack size exceeds 64K-1
  The value given as a parameter to the /STACK option exceeded the allowed maximum of 65,535 bytes.
L1007 /OVERLAYINTERRUPT : interrupt number exceeds 255
  An overlay interrupt number greater than 255 was specified with the /OV option value.
  Check the DOS Technical Reference or other DOS technical manual for information about interrupts.
L1008 /SEGMENTS : segment limit set too high
  The /SEG option was specified with a limit on the number of definitions of logical segments that was impossible to satisfy.
L1009 value : /CPARM : illegal value
  The value specified with the /CPARM option was not in the range 1–65,535.
L1020 no object modules specified
  No object-file names were specified to the linker.
L1021 cannot nest response files
  A response file occurred within a response file.
L1022 response line too long
  A line in a response file was longer than 255 characters.
L1023 terminated by user
  CTRL+C was entered.
L1024 nested right parentheses
  The contents of an overlay were typed incorrectly on the command line.
L1025 nested left parentheses
  The contents of an overlay were typed incorrectly on the command line.
L1026 unmatched right parenthesis
  A right parenthesis was missing from the contents specification of an overlay on the command line.
L1027 unmatched left parenthesis
  A left parenthesis was missing from the contents specification of an overlay on the command line.
L1030 missing internal name
  An IMPORTS statement specified an ordinal in the module-definition file without including the internal name of the routine.
  The name must be given if the import is by ordinal.
L1031 module description redefined
  A DESCRIPTION statement in the module-definition file was specified more than once.
L1032 module name redefined
  The module name was specified more than once (in a NAME or LIBRARY statement).
L1040 too many exported entries
  The program exceeded the limit of 65,535 exported names.
L1041 resident names table overflow
  The size of the resident names table exceeded 65,535 bytes.
  An entry in the resident names table is made for each exported routine designated RESIDENTNAME and consists of the name plus three bytes of information. The first entry is the module name.
  Reduce the number of exported routines or change some to nonresident status.
L1042 nonresident names table overflow
  The size of the nonresident names table exceeded 65,535 bytes.
  An entry in the nonresident names table is made for each exported routine not designated RESIDENTNAME and consists of the name plus three bytes of information. The first entry is the DESCRIPTION statement.
  Reduce the number of exported routines or change some to resident status.
L1043 relocation table overflow
  More than 32,768 long calls, long jumps, or other long pointers appeared in the program.
  Try replacing long references with short references where possible.
L1044 imported names table overflow
  The size of the imported names table exceeds 65,535 bytes.
  An entry in the imported names table is made for each new name given in the IMPORTS section, including the module names, and consists of the name plus one byte.
  Reduce the number of imports.
L1045 too many TYPDEF records
  An object module contained more than 255 TYPDEF records. These records describe communal variables.
  This error can appear only with programs produced by the Microsoft FORTRAN Compiler or other compilers that support communal variables. (TYPDEF is a DOS term. It is explained in the Microsoft MS-DOS Programmer's Reference and in other reference books on DOS.)
L1046 too many external symbols in one module
  An object module specified more than the limit of 1,023 external symbols.
  Break the module into smaller parts.
L1047 too many group, segment, and class names in one module
  The program contained too many group, segment, and class names.
  Reduce the number of groups, segments, or classes. Re-create the object file.
L1048 too many segments in one module
  An object module had more than 255 segments.
  Split the module or combine segments.
L1049 too many segments
  The program had more than the maximum number of segments.
  Use the /SEG option when linking to specify the maximum legal number of segments. The range of valid settings is 0–3,072. The default is 128.
L1050 too many groups in one module
  LINK encountered more than 21 group definitions (GRPDEF) in a single module.
  Reduce the number of group definitions or split the module. (Group definitions are explained in the Microsoft MS-DOS Programmer's Reference and in other reference books on DOS.)
L1051 too many groups
  The program defined more than 20 groups, not counting DGROUP.
  Reduce the number of groups.
L1052 too many libraries
  An attempt was made to link with more than 32 libraries.
  Combine libraries, or use modules that require fewer libraries.
L1053 out of memory for symbol table
  The program had more symbolic information (such as public, external, segment, group, class, and file names) than could fit in available memory.
  Try freeing memory by linking from the DOS command level instead of from a MAKE file or an editor. Otherwise, combine modules or segments and try to eliminate as many public symbols as possible.
L1054 requested segment limit too high
  LINK did not have enough memory to allocate tables describing the number of segments requested. The number of segments is the default of 128 or the value specified with the /SEG option.
  Try linking again by using the /SEG option to select a smaller number of segments (for example, use 64 if the default was used previously), or free some memory by eliminating resident programs or shells.
L1056 too many overlays
  The program defined more than 63 overlays.
L1057 data record too large
  An LEDATA record (in an object module) contained more than 1,024 bytes of data. This is a translator error. (LEDATA is a DOS term explained in the Microsoft MS-DOS Programmer's Reference and in other DOS reference books.)
  Note which translator (compiler or assembler) produced the incorrect object module. Please report the circumstances of the error to Microsoft Corporation by following the instructions on the Microsoft Product Assistance Request form at the back of one of your manuals.
L1061 out of memory for /INCR
  LINK ran out of memory when trying to process the additional information required for ILINK support.
  Disable incremental linking.
L1062 too many symbols for /INCR
  The program had more symbols than can be stored in the .SYM file.
  Reduce the number of symbols or disable incremental linking.
L1063 out of memory for CodeView information
  LINK was given too many object files with debug information, and it ran out of space to store them.
  Reduce the number of object files that have full debug information by compiling some files with either /Zd instead of /Zi or no CodeView option at all.
L1064 out of memory—near/far heap exhausted
  LINK was not able to allocate enough memory for the given heap.
  One of the following may be a solution:

Under OS/2, increase the swap space.

Reduce the size of code, data, and symbols in the program.

Under OS/2, split the program into dynamic-link libraries.

L1070 segment : segment size exceeds 64K
  A single segment contained more than 64K of code or data.
  Try changing the memory model to use far code or data as appropriate. If the program is in C, use CL's /NT option or the #pragma alloc_text to build smaller segments.
L1071 segment _TEXT exceeds 64K – 16
  This error is likely to occur only in small-model C programs, but it can occur when any program with a segment named _TEXT is linked using the /DOSSEG option of the LINK command.
  Small-model C programs must reserve code addresses 0 and 1; this range is increased to 16 for alignment purposes.
  Try compiling and linking using the medium or large model. If the program is in C, use CL's /NT option or the #pragma alloc_text to build smaller segments.
L1072 common area exceeds 64K
  The program had more than 65,536 bytes of communal variables. This error occurs only with programs produced by the Microsoft FORTRAN Compiler or other compilers that support communal variables.
L1073 file-segment limit exceeded
  The number of physical or file segments exceeded the limit of 255 imposed by OS/2 protected mode and by Windows for each application or dynamic-link library.
  A file segment is created for each group definition, nonpacked logical segment, and set of packed segments.
  Reduce the number of segments, or put more information into each segment. Use the /PACKC option or the /PACKD option or both.
L1074 group : group exceeds 64K
  The given group exceeds the limit of 65,536 bytes.
  Reduce the size of the group, or remove any unneeded segments from the group. Refer to the map file for a listing of segments.
L1075 entry table exceeds 64K – 1
  The entry table exceeded the limit of 65,535 bytes.
  There is an entry in this table for each exported routine. The table also includes an entry for each address that is the target of a far relocation, when one of the following conditions is true:

The target segment is designated IOPL (specific to OS/2).

PROTMODE is not enabled and the target segment is designated MOVABLE (specific to Windows).

  Declare PROTMODE if applicable, or reduce the number of exported routines, or make some segments FIXED or NOIOPL if possible.
L1078 file-segment alignment too small
  The segment-alignment size specified with the /ALIGN option was too small.
L1080 cannot open list file
  The disk or the root directory was full.
  Delete or move files to make space.
L1081 out of space for run file
  The disk on which the executable file was being written became full. Free more space on the disk and restart LINK.
L1082 filename : stub file not found
  LINK could not open the file given in the STUB statement in the module-definition file.
  The file must be in the current directory or in a directory specified by the PATH environment variable.
L1083 cannot open run file
  One of the following may have occurred:

The disk or the root directory was full.

Another process opened or deleted the file.

A read-only file existed with the same name.

The floppy disk containing the file was removed.

A hard-disk error occurred.

L1084 cannot create temporary file
  One of the following may have occurred:

The disk or the root directory was full.

The directory specified in the TMP environment variable did not exist.

L1085 cannot open temporary file
  One of the following may have occurred:

The disk or the root directory was full.

The directory specified in the TMP environment variable did not exist.

L1086 scratch file missing
  An internal error has occurred.
  Note the circumstances of the error and notify Microsoft Corporation by following the instructions on the Microsoft Product Assistance Request form at the back of one of your manuals.
L1087 unexpected end-of-file on scratch file
  The disk with the temporary linker-output file was removed.
L1088 out of space for list file
  The disk where the listing file was being written is full.
  Free more space on the disk and restart LINK.
L1089 filename : cannot open response file
  LINK could not find the specified response file.
  Check that the name of the response file is spelled correctly.
L1090 cannot reopen list file
  The original floppy disk was not replaced at the prompt.
  Restart the link session.
L1091 unexpected end-of-file on library
  The floppy disk containing the library was probably removed.
  Replace the disk containing the library and run LINK again.
L1092 cannot open module-definition file
  LINK could not open the module-definition file specified on the command line or in the response file.
L1093 filename : object not found
  LINK could not find the given object file.
  Check the specification of the object file.
L1094 filename : cannot open file for writing
  LINK was unable to open the file with write permission.
  Check file permissions.
L1095 filename : out of space on file
  LINK ran out of disk space for the specified output file.
  Delete or move files to make space.
L1100 stub .EXE file invalid
  The file specified in the STUB statement is not a valid real-mode executable file.
L1101 invalid object module
  One of the object modules was invalid.
  Check that the correct version of LINK is being used.
  If the error persists after recompiling, note the circumstances of the error and notify Microsoft Corporation by following the instructions on the Microsoft Product Assistance Request form at the back of one of your manuals.
L1102 unexpected end-of-file
  An invalid format for a library was encountered.
L1103 attempt to access data outside segment bounds
  A data record in an object module specified data extending beyond the end of a segment. This is a translator error.
  Note which translator (compiler or assembler) produced the incorrect object module and the circumstances in which it was produced. Please report this error to Microsoft Corporation by following the instructions on the Microsoft Product Assistance Request form at the back of one of your manuals.
L1104 filename : invalid library
  The specified file was not a valid library file.
L1105 invalid object due to aborted incremental compile
  Delete the object file, recompile the program, and relink.
L1113 unresolved COMDEF; internal error
  Note the circumstances of the error and notify Microsoft Corporation by following the instructions on the Microsoft Product Assistance Request form at the back of one of your manuals.
L1115 option : option incompatible with overlays
  The given option is not compatible with overlays.
  Remove the option, or do not use overlaid modules.
L1116 /EXEPACK valid only for OS/2 and real-mode DOS
  The /EXEPACK option is incompatible with Windows programs.
L1123 segment : segment defined both 16-bit and 32-bit
  Define the segment as either 16-bit or 32-bit.
L1126 conflicting pwords value
  An exported name was specified in the module-definition file with an IOPL-parameter-words (pwords) value, and the same name was specified as an export by the Microsoft C export pragma with a different pwords value.
L1127 far segment references not allowed with /TINY
  The /TINY option for producing a .COM file was used in a program that has a far segment reference.
  Far segment references are not compatible with the .COM-file format. High-level-language programs cause this error unless the language supports the tiny memory model. An assembly-language program that references a segment address also causes this error.
  For example:

mov ax, seg mydata