Carlos Vergara wrote:
> 
> *This message was transferred with a trial version of CommuniGate(tm) Pro*
> 
> Hi,
> 
> I have RedHat with gcc-2.96-110.   I'm trying to install gforth

>From <http://www.complang.tuwien.ac.at/forth/gforth/Known-problems.html>:

Redhat Linux 7, 7.1 for Intel

Symptom

Building Gforth hangs when using the gforth binary for the first time. 

Fix

Configure with 

CC="gcc -fno-gcse" ./configure --enable-force-reg --enable-indirect-threaded

This has been tested and works on gcc version 2.96 20000731 (Red Hat
Linux 7.1 2.96-81).

Alternatively, use the binary package. Alternatively, use kgcc (in the
compat-egcs package on Redhat 7.1) to compile gforth (configure with
CC=kgcc configure). Using gcc-2.95.3 (compiled from the source) is
also known to work.

Explanation

A trick used in Gforth no longer works under all conditions. If you
want details:

We used a trick in implementing non-primitives in direct threaded code
(in particular constants); this trick pushes (through CALL) and pops a
value on the stack, and the compiler, being unaware of this, must not
use esp between these two instructions; this worked up to gcc-2.95,
either because the compiler allocated registers well enough that it
did not need the stack there, or because it did not schedule its spill
code up across asm statements. In gcc-3.0.4, however (and presumably
starting at gcc-2.96), these assumptions do not hold in general, and
Gforth breaks.

- anton

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to