Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Qbasic 4.5 turning to exe

Status
Not open for further replies.

KingPoncho

Programmer
Aug 19, 2003
8
US
Hey, I finally got QB4.5 and I am insanely dissapointed, as the only reason I really got it was for the feature that could make a .bas into an .exe file. it gives me an error (As shown below) and I was wondering if any knew what it meant, and how I can fix it.

it goes:
LINK : fatal arror L1089 : ~QBLINK.TMPD : cannot open response file

so any assistance any one could offer would be fantastic!

Thanks,
KING PONCHO
 
My book says:

L1089 filename:cannot open response file
LINK could not find the specified response file.
This usually indicates a typing error.

HTH.
 
so does that mean that there is an actual error in my program? cause it will run fine when i just run it...


King Poncho
 
This error can come from a few reasons, such as being in a directory (or
using a filename) with the @ symbol in it.

Another cause of this error may be that you are using the wrong version of
the linker, as this document below from microsoft explains better than I
can.

- Dav
Visit THE CODE POST


======================================================
DOCUMENT:Q37418 12-JAN-1990 [B_QUICKBAS]
TITLE :LINK "Cannot Open Response File" When Make EXE File in 4.50
PRODUCT :Microsoft QuickBASIC Compiler
PROD/VER:4.50
OPER/SYS:MS-DOS
KEYWORDS:buglist4.50

Summary:

The error "Cannot open response file" can occur if "Make EXE File..."
in QB.EXE Version 4.50 invokes the Segmented-Executable linker (which
does not come with QuickBASIC). QuickBASIC versions earlier than 4.50
do not create a response file for the linker, and link successfully
without giving this error message. (Note that QuickBASIC Versions 4.00
and later require at least Version 3.61 of the linker to handle the
/EX (EXEPACK) option.)

To properly create an .EXE file from within the QuickBASIC Version
4.50 environment, you must first make sure that the linker found by
QuickBASIC (either in your search path, or in the executable file path
specified in QuickBASIC) is the Overlay Linker Version 3.6x.

If the linker found is a version earlier than 3.61, or a Segmented-
Executable linker such as the one supplied with Microsoft BASIC
Compiler Versions 6.00 and 6.00b or with Microsoft BASIC PDS Version
7.00, there may be complications in using "Make EXE File..." from
within the QuickBASIC Version 4.50 environment. BASIC PDS 7.00 comes
with the QBX.EXE environment, which contains all of the functionality
of the QuickBASIC 4.50 environment. Microsoft does not recommend using
QB.EXE 4.50 or earlier with BASIC PDS 7.00.

More information:

In QuickBASIC Version 4.50, the link step of the .EXE file creation is
performed with the use of a response file. (A response file can be
used to supply the input to the linker, such as object modules, output
file name, extra libraries, etc.) QuickBASIC creates a temporary file
(~QBLNK.TMP) that contains all of the information required by the four
prompts of the linker (object files, .EXE file name, list file, and
libraries), then tells the linker to use this file for a response
file.

This causes a problem with the Segmented-Executable linkers, because
these linkers have a fifth input prompt (definitions file). Since the
response file does not satisfy this prompt, the linker waits for you
to enter a definitions file. You can press ENTER at this prompt, and
the linker will complete its task.

In addition to asking for a definitions file, the Segmented-Executable
linker has another difference from the Overlay linker. If a response
file is inadvertently supplied with a four-character extension (for
example, RESPONSE.ABCD), the Segmented-Executable linker stops with a
"Cannot open response file" error message. However, the Overlay linker
truncates the filename to a three-character extension (for example,
RESPONSE.ABCD becomes RESPONSE.ABC), and then looks for that file.

Under some circumstances, QuickBASIC Version 4.50 generates an invalid
file specification for the response file (specifically "~QBLNK.TMPD",
which has an illegal fourth letter, D, on the name extension). Because
of the differences between the two linkers, the Overlay linker ignores
the appended "D" on the response file, and correctly produces an .EXE
file. However, the Segmented-Executable linker gives a fatal error,
"Cannot open response file", and aborts.

Microsoft has confirmed this to be a problem in Version 4.50. We are
researching this problem and will post new information here as it
becomes available.

The following is a summary of workarounds for this problem:

1. Use the Overlay Linker Version 3.6x.

2. If the response file is found, the .EXE file can be produced by
pressing ENTER at the "Definitions file:" prompt. If the response
file is NOT found, try renaming your BASIC source file, changing it
by a factor of 1 in length (that is, if your source file is an even
number of characters long, make it odd, and vice-versa).

3. Compile and link your program from the DOS command line.

====================================================
 
Hey man. If you want a program that is just as good as 4.5, but NEVER gives you compiling errors, just goto yahoo and search firstbas.exe. It dosn't support split screening, but it compiles like lightening and dosn't have all of those annoying realtime error checking faults like QB does. Check it out!

Doug :)
 
Does anyone know where I can find what CodePost found out, that 'overlay linker version 3.6x' ?? I can't find it anywhere, the linker that I have is just called 'LINK.EXE' so I'm not even sure if that is the issue, but, anyway, anyone know what I can do or where to find it?
 
RUN LINK.EXE THEN TYPE THE NAME THEN ENTER FOR ALL QUESTION
 
Link.exe should be that. At the end of my link.exe it has
3.69

You should have
QB.EXE
BC.EXE
QB.LIB
BRUN45.LIB
BQLB45.LIB
BCOM45.LIB
LINK.exe
BRUN45.EXE
LIB.EXE

These should all be in the same directory.
I have them in the same directory as my source and EXEs.

I've noticed that some complain about downloading qb45 from
the internet that not all files were there.

I purchased mine before it became so hard to find it, so
I still have my install diskettes.

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top