PRB: Commands Fail in Makefile if Directory Over 66 Characters (154059)



The information in this article applies to:

  • The Program Maintenance Utility (NMAKE.EXE), when used with:
    • Microsoft Visual C++ for Windows, 16-bit edition 1.0
    • Microsoft Visual C++ for Windows, 16-bit edition 1.5
    • Microsoft Visual C++ for Windows, 16-bit edition 1.52
    • Microsoft Visual C++, 32-bit Editions 1.0
    • Microsoft Visual C++, 32-bit Editions 2.0
    • Microsoft Visual C++, 32-bit Editions 2.1
    • Microsoft Visual C++, 32-bit Editions 2.2
    • Microsoft Visual C++, 32-bit Editions 4.0
    • Microsoft Visual C++, 32-bit Editions 4.1
    • Microsoft Visual C++, 32-bit Enterprise Edition 4.2
    • Microsoft Visual C++, 32-bit Professional Edition 4.2
    • Microsoft Visual C++, 32-bit Enterprise Edition 5.0
    • Microsoft Visual C++, 32-bit Professional Edition 5.0
    • Microsoft Visual C++, 32-bit Enterprise Edition 6.0
    • Microsoft Visual C++, 32-bit Professional Edition 6.0
    • Microsoft Visual C++, 32-bit Learning Edition 6.0

This article was previously published under Q154059

SYMPTOMS

When running on Windows 95, commands in the makefile echo out to the screen but they do not execute. For example, the sample makefile shown below echoes the following commands:
   dir *.*
   md test
				
but neither command is executed.

CAUSE

The directory in which you are running nmake is over 66 characters long. When running in MS-DOS mode on Windows 95, the MS-DOS limitation of 66 characters, including the drive and colon, still applies. Long filenames are counted as 8 characters when determining the total length of a directory.

RESOLUTION

If you need to run NMAKE from the Command prompt, the fully qualified directory length cannot exceed 66 characters.

STATUS

This behavior is by design.

MORE INFORMATION

Sample Makefile

ALL:
    dir *.*
    md test

Modification Type:MajorLast Reviewed:12/10/2003
Keywords:kbprb KB154059 kbAudDeveloper