www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/1998/07/17/03:00:38

Date: Fri, 17 Jul 1998 09:57:58 +0200 (WET)
From: Andris Pavenis <pavenis AT lanet DOT lv>
To: Nate Eldredge <nate AT cartsys DOT com>
cc: "John M. Aldrich" <fighteer AT cs DOT com>, djgpp-workers AT delorie DOT com
Subject: Re: Compile gives Abort! error
In-Reply-To: <35AAD98B.389C5B42@cartsys.com>
Message-ID: <Pine.A32.3.91.980717095017.54016A-100000@ieva05.lanet.lv>
MIME-Version: 1.0


On Mon, 13 Jul 1998, Nate Eldredge wrote:

> Andris Pavenis wrote:
> 
> > TEMP and TMP is used by gcc if TMPDIR is not defined (It's normally
> > defined in DJGPP.ENV unless explicitly removed from there (I don't remember
> > in which is looked first). NOTE: I'm talking about gcc-2.8.1 and didn't look
> > in sources of previous versions.
> > 
> > >
> > > I wonder: why not?  Seems to me we could just set TMPDIR to TEMP in
> > > DJGPP.ENV.  Since DOS users have to have TEMP set reasonably anyhow,
> > > that would save trouble of this kind.
> > >
> > 
> > That can be one of solutions when DJGPP is residing on R/O disk.
> > I don't think it's good by default.
> > 
> > gcc ends so when tries to put temporary files on read only disk.
> > I met this, when wrote my installation of DJGPP to CD and forgot
> > to edit DJGPP.ENV before (I was hurrying). Such CD is nice if I
> > have to go somewhere and compile some program as there is no need to
> > install anything.
> 
> Then I think what we really need is for GCC to handle that more
> gracefully.  A cursory glance through the FSF GCC sources didn't show
> anyplace where it might abort if the file didn't open, but it still
> might be there, or only in the DJGPP sources (which I don't have
> handy).  This is where `abort' giving SIGABRT and a traceback would be
> helpful...
> -- 
> 

It is in original sources of gcc:
  file:   	choose_temp.c 
  procedure:    char * choose_temp_base ()    (it is very end of this file)

When gcc is not getting name of temporary file it's simply aborts.
DJGPP port of gcc-2.8.1 now creates empty file when asked for name of
temporary files to avoid conflicts between different DOS sessions
running simultaneusly. Of course this fails if disk is read only.

If we'll not create file then we'll not be able to safely run gcc from 2 DOS 
sessions simultaneusly. In such situation some other program more likely
cpp will complain.

Andris

- Raw text -


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