BUG: BC Defaults to /Lp in Windows NT So Use /Lr as Workaround (103680)



The information in this article applies to:

  • Microsoft Basic Professional Development System for MS-DOS 7.0
  • Microsoft Basic Professional Development System for MS-DOS 7.1
  • Microsoft Windows NT Server 3.1
  • Microsoft Windows NT Workstation 3.1

This article was previously published under Q103680

SYMPTOMS

  • When linking a program in Windows NT, you may receive an error L4051 similar to this one:

    LINK : warning L4051: brt71efp.lib : cannot find library

  • When running a program that was compiled in Windows NT without BC option /O and linked successfully, you receive this error:
    The system cannot find the file BRT71EFP

WORKAROUND

Use the BC option /Lr. When you compile from within the QBX interpreter environment, this option is used automatically.

CAUSE

In Windows NT, the BC.EXE compiler acts as if it were invoked with /Lp. This causes the linker to attempt to make an OS/2 executable that requires the libraries named B??71??P.LIB and the run-time libraries BRT71??P.DLL.

STATUS

Microsoft has confirmed this to be a bug in Basic Professional Development System (PDS) version 7.1 for MS-DOS. We are researching this problem and will post more information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION

When you compile a program in Windows NT using the BC option /O without /Lr and you have the Basic PDS OS/2 libraries installed, no errors are reported when linking and the resulting executable (.EXE) may run successfully in Windows NT -- but the executable is an OS/2 executable.

Steps to Reproduce Problem

At the command prompt, run the following commands.
   echo PRINT "hello" >test.bas
   bc test;
   link test;
   test
				
Depending on whether you specify each the BC options /O /Fs and /FPa and depending on whether you have the Basic PDS OS/2 libraries installed, you may see a LINK or run-time error referring to one of the following libraries:

bcl71afp.lib
bcl71anp.lib
bcl71efp.lib
bcl71enp.lib
brt71afp.lib
brt71anp.lib
brt71efp.lib
brt71enp.lib


Modification Type:MinorLast Reviewed:8/16/2005
Keywords:kbbug KB103680