NMAKE and LIB Warning Messages

Number NMAKE and LIB Warning Message

U4001command file can be invoked only from command line  
  A command file, which is invoked by the at sign (@) specifier, cannot contain a specification for another command file. Such nesting is not allowed. The specification was ignored.
U4002resetting value of special macro macroname  
  The given predefined macro was redefined.
U4004too many rules for target targetname  
  More than one description block was specified for the given target using single colons (:) as separators. NMAKE executed the commands in the first description block and ignored later blocks.
  To specify the same target in multiple dependencies, use double colons (::) as the separator in each dependency line.
U4005ignoring rule rule (extension not in .SUFFIXES)  
  The given rule contained a suffix that is not specified in the .SUFFIXES list. NMAKE ignored the rule.
  This warning appears only when the /P option is used.
U4006special macro undefined : macroname  
  The given special macro name is undefined and expands to nothing.
U4007filename filename too long; truncating to 8.3  
  The base name of the given file has more than eight characters, or the extension has more than three characters. NMAKE truncated the name to an eight-character base and a three-character extension.
  If long filenames are supported by your file system, enclose the name in double quotation marks (").
U4008removed target target  
  NMAKE was interrupted while trying to build the given target, and the target file was incomplete. Because the target was not specified in the .PRECIOUS list, NMAKE deleted the file.
U4010target : build failed; /K specified, continuing ...  
  A command in the commands block for the given target returned a nonzero exit code. The /K option told NMAKE to continue processing unrelated parts of the build and to issue an exit code 1 when the NMAKE session is finished.
  If the given target is itself a dependent for another target, NMAKE issues warning U4011 after this warning.
U4011target : not all dependents available; target not built  
  A dependent of the given target either did not exist or was out-of-date, and a command for updating the dependent returned a nonzero exit code. The /K option told NMAKE to continue processing unrelated parts of the build and to issue an exit code 1 when the NMAKE session is finished.
  This warning is preceded by warning U4010 for each dependent that failed to be created or updated.
U4150module : module redefinition ignored  
  A module was specified with the add operator (+) to be added to a library, but a module having that name was already in the library.
  One cause of this error is an incorrect specification of the replace operator (–+).
U4151symbol : symbol defined in module module; redefinition ignored  
  The given symbol was defined in more than one module.
U4153option : value : page size invalid; ignored  
  The argument specified with the /PAGE option was not valid for that option. The value must be an integer power of 2 between 16 and 32,768. LIB assumed an existing page size from a library that is being combined.
U4155modulename : module not in library  
  The given module specified with a command operator does not exist in the library.
  If the replacement command (–+) was specified, LIB added the file anyway. If the delete (), copy (*), or move (–*) command was specified, LIB ignored the command.
U4156library : output-library specification ignored  
  A new library was created because the filename specified in the oldlibrary field did not exist. However, a filename was also specified in the newlibrary field. LIB ignored the newlibrary specification.
  For example, both of the following command lines cause this error if PROJECT.LIB does not already exist:

LIB project.lib +one.obj, new.lst, project.lib

LIB project.lib +one.obj, new.lst, new.lib

U4157insufficient memory, extended dictionary not created  
  Insufficient memory prevented LIB from creating an extended dictionary.
  The library is still valid, but the linker cannot take advantage of the extended dictionary to speed linking.
U4158internal error, extended dictionary not created  
  An internal error prevented LIB from creating an extended dictionary.
  The library is still valid, but the linker cannot take advantage of the extended dictionary to speed linking.