www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1994/02/02/01:33:14

Date: Wed, 2 Feb 94 14:31:40 JST
From: Stephen Turnbull <turnbull AT shako DOT sk DOT tsukuba DOT ac DOT jp>
To: sheen AT pact DOT srf DOT ac DOT uk
Cc: djgpp AT sun DOT soe DOT clarkson DOT edu
Subject: Make problems ... are generally solved by more *real* memory

This is to amplify Bob Babcock's discussion, which is basically
sufficient in itself for practical purposes.  The following is
available in the archives; it's basically a paraphrase of a
conversation I had with Charles Sandmann.
    All DJGPP programs need their own copies of GO32.  It seems that
the current copy needs about 180KB of free real memory (under the
640KB boundary for those Un*x junkies who are joining our broadcast
late) to set itself up, and the next few require 150KB each (with the
standard stubbed executables, this drops to 130KB with GO32 itself
bound into the image---a generally bad idea but possible).  The
differential has something to do with GO32 paging out some of its
tables along with the application on a system() call.
    Now when you run make, make brings a copy of GO32 (leaving 150KB),
and calls GCC (adding a second copy of GO32, adding 150KB), which then
calls the various compilers (adding a third copy of GO32, adding
another 180KB), giving a minimum of 480KB being required.  I have run
into recursive makefile (make calls make!) and now you're talking
610KB.  As a practical matter, untuned DOS systems generally leave 500
free at the command line.  What with the huge environments demanded by
Unix-style applications, if you have any drivers or TSRs (ANSI,
Double-space, SideKick, etc) running, your compiles under make are
going to choke when they get to the actual compiler, loader, etc.
    I found that with QEMM 7, I can get enough memory both under DOS
and under DESQview to run (non-recursive) makes quite comfortably.  I
highly recommend QEMM or 386MAX until that happy day that GO32 becomes
reentrant.  DOS 5 and 6 do a pretty good job, but they're not as
automatic as QEMM and 386MAX.  Also, the EMM386s that comes with DOS 5
and Windows 3.1 are different and have different incompatibilities
with other protected mode programs.  QEMM and 386MAX seem to have a
definite edge in out-of-the-box compatibility with 3rd party software.
    Hope this helps.  Good luck!
    --Steve



- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019