Date: Sun, 27 Oct 1996 18:25:25 +0200 (IST) From: Eli Zaretskii To: Stephen Baker Cc: djgpp AT delorie DOT com Subject: Re: iostream.h and string.h problem In-Reply-To: Message-Id: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII On Sat, 26 Oct 1996, Stephen Baker wrote: > I have been grappling with this for hours and hours over a two week > period and have really had it! It's a pity you've killed two weeks of your time, to say nothing of your frustration, when the answer is right there at your fingertips -- in the DJGPP FAQ list (section 8.7). It clearly tells you to use `gxx', not `gcc' when compiling C++ programs, and to append -lstdcx to your link command lines. The file `readme.1st' in the DJGPP archives also tells this. You should have called the compiler like so: gxx stars2.cc -lstdcx If this doesn't work, please post the redirected output of the above command (your message only includes output of "gcc stars2.cc" which is the wrong command). Some other advice: > iostream and string include directives. The hardware is an old Gateway > 386sx16 with an 80M Stacked drive and 16M of memory and DOS 6.0. For 16MB of memory, 4MB of RAMdisk is too much IMHO; see the configuration tips in the FAQ. I suggest you keep the RAMdrive at 2MB at the most, and give the rest to SmartDrv (1MB is *way* too low!). > #= +TMPDIR=%DJDIR%/tmp > +TMPDIR=%E:/>tmp% Doesn't the file say to NOT edit it? The line above has an incorrect syntax (the `/' and `>' modifiers must all appear right after the `%', and in this case cannot be used at all, since they only modify a value of another environment variable). This caused GCC to put temporary files in your current directory (look at your compilation trace). I suggest you leave the original line intact and define TMPDIR from AUTOEXEC.BAT (the `+' before TMPDIR means that value in the environment overrides the value on DJGPP.ENV).