delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/04/22/13:49:23

Date: Sat, 22 Apr 2000 14:25:17 -0400 (EDT)
Message-Id: <200004221825.OAA18872@indy.delorie.com>
From: Eli Zaretskii <eliz AT delorie DOT com>
To: "Roger D. Hunt" <rhunt AT worldaccessnet DOT com>
CC: djgpp AT delorie DOT com
In-reply-to: <3901E4BE.CBE9C9B2@worldaccessnet.com> (rhunt@worldaccessnet.com)
Subject: Re: Can't get djgpp set up - help please!
References: <3901E4BE DOT CBE9C9B2 AT worldaccessnet DOT com>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> From: "Roger D. Hunt" <rhunt AT worldaccessnet DOT com>
> Newsgroups: comp.os.msdos.djgpp
> Date: Sat, 22 Apr 2000 10:43:26 -0700
> 
> I hope that someone can help with a problem getting the DJGPP flavor of
> 'gcc', version 2.7.2.1.f.1, to run under MS-DOS v6.22.
[snip]
> I recently downloaded the following files based upon zip-picker:
>      djdev203.zip         faq230b.zip           rhide14b.zip
>      bnu2951b.zip        gcc2952b.zip        mak379b.zip
>      txi40b.zip               csdpmi4b.zip

There's some discrepancy in what you tell above: you are talking about
GCC version 2.7.2.1, but the GCC binary distribution you downloaded,
gcc2952b.zip, is version 2.95.2 of GCC.

Is it possible that you had an older version of GCC installed on this
machine, and that you didn't remove that old installation before
installing the new one?  If so, you want to remove everything and
reinstall, since it's quite possible that your problems all stem from
mixing two different versions of GCC.

> and un-zipped them in the path 'C:\PROGRAMS\GCC' as opposed to the
> recommended directory of 'C:\DJGPP'.  All of the directories containing
> the
> unzipped files are located in directories C:\PROGRAMS\GCC\BIN,
> C:\PROGRAMS\GCC\LIB, etc.

This is okay.

> Following the guidelines of the README.1ST file, I then changed my
> CONFIG.SYS
> file so it includes these lines:
>      DEVICE=C:\DOS\HIMEM.SYS
>      DEVICE=C:\DOS\EMM386.EXE NOEMS
>      files=40
>      SHELL=c:\dos\command.com c:\dos /e:2048 /p
>      fcbs=40,0
>      dos=HIGH
> and the AUTOEXEC.BAT file so it includes the following lines:
>      PATH ... \programs\gcc\bin; ...
>      SET DJGPP=\programs\gcc\djgpp.env

This is not 100% okay: you need to say c:\programs\gcc\bin and
c:\programs\gcc\djgpp.env, respectively.  The drive letter must be
included.

> I am running this on an old Pentium with only 48MB of RAM, although when
> I run GO32-V2, it indicates:
>      DPMI memory available: 33287 Kb
>      DPMI swap space available: 35553 Kb

This is okay as well.  (But note that your version of EMM386 only
supports 32MB of extended memory, instead of all the 48MB you have.)

> My first problem was when I ran 'gcc', I got the following error
> message:
>   GCC.EXE: installation problem, cannot exec 'cc1': No such file or
> directory

Add -v to the GCC command line and watch what does it say about the
specs file.  If it says "Using built-in specs", you have an
installation problem that causes the above problem as well.

> I found that CC1.EXE was not in the BIN directory but in:
>   \programs\gcc\lib\gcc-lib\djgpp\2.952\cc1.exe

That is the correct place of cc1.exe; do NOT copy or move it
anywhere else.

> As a temporary measure, I copied CC1.EXE into the BIN directory and ran
> 'gcc' again.  This time I got the following error message:
>   GCC.EXE: installation problem, cannot exec 'cc1': Not enough memory
> The CC1.EXE file is 1.8MB in size so it understandably won't load in
> DOS's 640K base memory

The size of the program on disk is not important, since it is loaded
into extended memory, not into DOS memory.

The memory size is not your problem.  You need to find out why didn't
GCC find cc1.exe when it was in the lib\gcc-lib\djgpp\2.952\
subdirectory.  Please remove the copy of cc1.exe you put into bin for
the rest of your digging into this problem.

> I strongly suspect my problem has to do with the DJGPP.ENV file in the
> \PROGRAMS\GCC directory which contains the following unmodified line:
>      DJDIR=%:/>DJGPP%
> which needs to be modified to reflect my \PROGRAMS\GCC path

No, please do NOT edit DJGPP.ENV.  This line is correct: it tells
DJGPP programs to compute the value of DJDIR by taking the leading
directories part of the value of the DJGPP variable, and convert the
backslashes into forward slashes while at that.

In other words, in your case, DJDIR will have the value
c:/programs/gcc, once you put the drive letter into the DJGPP
variable.  This is what the rest of DJGPP programs expect.

> First, does anyone know how to edit the DJGPP.ENV file to reflect the
> path I am using?

Do NOT edit it!

> Second, does anyone know why 'cc1' will not run?

If the above doesn't help, add -v to the GCC command line, and post
here everything that the compiler prints.

> Am I terribly misinformed in thinking that 'gcc' runs under native
> MS-DOS as opposed to a WIN95 DOS box or something?

GCC can run in both environments: native MS-DOS and Windows DOS box.

- Raw text -


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