FIX: U4007 Warning Caused by Long Pseudotarget Name

Last reviewed: September 16, 1997
Article ID: Q93791
1.11 1.12 1.13 1.20 1.30 1.40 | 1.40
MS-DOS                        | WINDOWS NT
kbtool kbfixlist kbbuglist

The information in this article applies to:

  • Microsoft NMAKE for MS-DOS, versions 1.11, 1.12, 1.13, 1.2, 1.3, and 1.4
  • Microsoft NMAKE Utility for Windows NT, version 1.4

SYMPTOMS

When an NMAKE make file contains a pseudotarget, the following warning message appears on machines using the FAT file system:

  NMAKE : warning U4007: filename 'ThisIsAPsuedoTarget'
     too long; truncating to 8.3

CAUSE

The name of the pseudotarget is longer than the MS-DOS 8.3 file naming system allows.

RESOLUTION

To eliminate the warning, change the name of the pseudotarget to give it a legal MS-DOS file name.

STATUS

Microsoft has confirmed this to be a problem in the products listed at the beginning of this article.

This problem is corrected in NMAKE for Windows NT, version 1.5. NOTE: Windows NT 3.5 FAT supports long filenames.

MORE INFORMATION

In the Microsoft C/C++ "Environment and Tools" manual for version 7.0, page 658 states the following:

   A pseudotarget name must follow the syntax rules for filenames.
   Like a filename target, a pseudotarget name is not case sensitive.
   However, if the name does not have an extension (that is, it does
   not contain a period), it can exceed the 8-character limit for
   filenames and can be up to 256 characters long.

The warning occurs when you try to use the functionality promised by the third sentence above.

In the sample makefile below, changing the name of the pseudotarget to a legal 8.3 name eliminates the U4007 warning message.

Sample Code

/*
 * Command line options needed: none
 */

ThisIsAPsuedoTarget: T1 T2 T3

T1:

T2:

T3:


Additional reference words: 1.11 1.12 1.13 1.20 1.30 1.40
KBCategory: kbtool kbfixlist kbbuglist
KBSubcategory: NmakeIss
Solution Type : kbfix


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: September 16, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.