PRB: Linker Produces 2-MB Executables Under Windows NT 3.5 (119668)



The information in this article applies to:

  • Microsoft Fortran Powerstation 32 for Windows NT 1.0
  • The Microsoft Linker (LINK.EXE) 1.0

This article was previously published under Q119668

SYMPTOMS

LINK.EXE included with Visual C++ for Windows NT, version 1.0, or FORTRAN PowerStation for Windows NT, version 1.0 produces 2 MB executable files when used on Windows NT version 3.5.

CAUSE

The linker uses a memory-mapped file for the output file that is generated. The initial file size is 2 MB and it is increased in 2-MB increments as the output size grows. When the linker is finished, it truncates the file to its proper size. It does this by truncating the file then unmapping it from memory, whereas it makes more sense to do the reverse. (Windows NT version 3.1 produces the expected output anyway, but Windows NT version 3.5 does not. Under Windows NT version 3.5, the truncation is not successful and the output remains 2 MB for even the simplest "Hello, World" program.)

RESOLUTION

The next releases of these products will contain linkers that do not have this problem. Until then, the Win32SDK version 3.5 CD contains a version of LINK.EXE that corrects this problem in the \support\linker\32bit directory. Replace the Visual C++ version 1.0 linker with the linker included on the Win32 SDK version 3.5 CD.

STATUS

This problem was corrected with Windows NT, version 3.51, and FORTRAN PowerStation, version 4.0.

MORE INFORMATION

The following files are available for download from the Microsoft Download Center:
For additional information about how to download Microsoft Support files, click the following article number to view the article in the Microsoft Knowledge Base:

119591 How to Obtain Microsoft Support Files from Online Services

Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help to prevent any unauthorized changes to the file. This linker is available on the Windows for NT version 3.5 CD in the \support\linker\32bit directory. It is not available on the floppy disk set.

Modification Type:MinorLast Reviewed:8/5/2004
Keywords:kbdownload kbfile kbinterop kbprb KB119668