*BSD News Article 13810


Return to BSD News archive

Newsgroups: comp.os.386bsd.apps
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!saimiri.primate.wisc.edu!usenet.coe.montana.edu!news.u.washington.edu!ns1.nodak.edu!plains.NoDak.edu!ortmann
From: ortmann@plains.NoDak.edu (Daniel Ortmann)
Subject: Re: GCC 2.3.3 on 386bsd
Sender: usenet@ns1.nodak.edu (Usenet login)
Message-ID: <C4rtIK.EHw@ns1.nodak.edu>
Date: Wed, 31 Mar 1993 20:42:20 GMT
References: <1993Mar29.222819.25110@njitgw.njit.edu>
Nntp-Posting-Host: plains.nodak.edu
Organization: North Dakota Higher Education Computing Network
Lines: 124

In article <1993Mar29.222819.25110@njitgw.njit.edu> kxn3796@hertz.njit.edu (Ken Nakata CIS stnt) writes:
)I ftp'ed GCC 2.3.3 from alpha.gnu.ai.mit.edu, untarred it on
)/usr/local/gcc-2.3.3, removed all *.o, and ran build-install.
)I succeeded to make xgcc without severe problems but xgcc complained
)when it was compiling enquire.c.  It claimed that numerical constants
)in enquire.c were out of range.  But there are only ZEROs and ONEs.
)I'm sorry not to have exact errorneous line number.
)
)Has someone experienced this error?  Or could someone point out my fault?
)I'm using my 486 box in which patched dist.fs from agate.berkeley.edu and
)bin01 are installed.
)
)Thanks in advance.
)
)Ken Nakata
)
)-- 
)/* I apologize if there are incorrect, rude, and/or impolite expressions in
)this mail or post. They are not intended. Please consider that English is a
)second language for me and I don't have full understanding of certain words
)or each nuance of a phrase.  Thank you. -- Ken Nakata, CIS student, NJIT */


From ljo@proteus.EEAP.CWRU.Edu Fri Feb  5 09:26:07 1993
Received: from proteus.EEAP.CWRU.Edu by plains.NoDak.edu; Fri, 5 Feb 1993 13:26:11 -0600
Received:  by proteus.EEAP.CWRU.Edu (4.1/CWRU-1.4-client)
	id AA00502; Fri, 5 Feb 93 14:26:07 EST (from ljo for ortmann@plains.nodak.edu)
Message-Id: <9302051926.AA00502@proteus.EEAP.CWRU.Edu>
Date: Fri, 5 Feb 93 14:26:07 EST
From: L. Jonas Olsson <ljo@proteus.EEAP.CWRU.Edu>
To: ortmann@plains.NoDak.edu
Cc: root@ref.tfs.com
In-Reply-To: Daniel Ortmann's message of Fri, 5 Feb 93 1:10:48 CST <199302050710.AA00529@plains.NoDak.edu>
Subject: compiling gcc on 386BSD
Status: OR

Hi Daniel,
 Julian forwards all his gcc mail to me, as I'm the one that has been
handling gcc on ref.tfs.com.

   From: Daniel Ortmann <ortmann@plains.NoDak.edu>
   Date: Fri, 5 Feb 93 1:10:48 CST
   X-Mailer: ELM [version 2.3 PL11]
   Sender: julian@ref.tfs.com

   The make for gcc 2.3.3 progresses fine until "enquire.c" is compiled to
   "enquire".  Then enquire runs and gets a "loss of precision trap", and
   the make aborts.
That is pretty normal for 386BSD.

   The TROUBLESHOOTING section of enquire.c sez to compile arithmetic
   traps disabled.....The problem is that I can find nothing in *any* of
   the documentation telling me how to compile without traps!

You can try adding:
#include <signal.h>
void
norm_signal ()
{
  fprintf (stderr, "You got a FPU trap\n");
}

and then inside main:
  signal (SIGFPE, norm_signal);

I don't think it will help though. The problems are in libc.a.

   I've consulted the 5 top local guru's here at NDSU, Fargo, ND, but none
   of them has any idea how to do it.  I had already tried all the
   suggestions they had, and searched the doc's quite completely.

   Can you help?

A little.

   I am running a Gateway2000 EISA 486DX system with a kernel built from
   your SCSI code.  The OS is (of course) 386BSD, and the compiler I am
   trying to build is gcc 2.3.3

   -- 
   Daniel Ortmann             NDSU Electrical Engineering
   ortmann@plains.nodak.edu   Fargo, North Dakota

Here's my packed answer...

 The only problem in compiling gcc-2.3.3 on a 386BSD machine is with
enquire. Enquire first refuses to compile and later generates inaccurate
values for DBL_MIN and DBL_MAX.

 The complete compilation require about 50MB of disk space.

 I have no solution, but am well aware of the enquire problems. If your
goal is to install gcc-2.3.3 as fast as possible you can simply ignore
all enquire problems. You do:

0. tar xvfz gcc-2.3.3.tar.Z; cd gcc-2.3.3
1. ./configure i386--bsd --with-gnu-ld
2. make LANGUAGES=c (ignore the problem that enquire doesn't compile, it
   is the last target in the make)
3. make stage1
4. make "CC=./stage1/xgcc -B./stage1/" CFLAGS="-g -O" (ignore the error code
   4 from enquire (four constants are imprecise)
5. make stage2 (you can now remove the stage1 directory, if you wish)
6. make "CC=./stage2/xgcc -B./stage2/" CFLAGS="-g -O" (ignore the error code
   4 from enquire (four constants are imprecise)
7. make compare
8. make install
9. edit /usr/local/lib/gcc-lib/i386--bsd/2.3.3/include/float.h to correct
   for the enquire problems.
   DBL_MIN should end in 14
   DBL_MAX should end in 57

 Also you can replace your malloc routines in libc.a (before compiling gcc2),
with the GNU malloc routines. This makes gcc2 and many other programs need
much less RAM. If you don't know how to do this it i safer to keep the
original malloc routines.

	Jonas Olsson
	ljo@po.cwru.edu


-- 
Daniel Ortmann             NDSU Electrical Engineering
ortmann@plains.nodak.edu   Fargo, North Dakota