delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/09/08/13:34:15

From: "Juan Manuel Guerrero" <ST001906 AT HRZ1 DOT HRZ DOT TU-Darmstadt DOT De>
Organization: Darmstadt University of Technology
To: sandmann AT clio DOT rice DOT edu (Charles Sandmann), pavenis AT lanet DOT lv,
Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
Date: Sat, 8 Sep 2001 19:29:49 +0200
Subject: Re: gcc-301 difficulty
CC: djgpp-workers AT delorie DOT com
In-reply-to: <10109071548.AA19975@clio.rice.edu>
References: <3B9899F8 DOT 17555 DOT 21743F AT localhost> from "pavenis AT lanet DOT lv" at Sep 07, 2001 09:57:12 AM
X-mailer: Pegasus Mail for Windows (v2.54DE)
Message-ID: <69117341E6B@HRZ1.hrz.tu-darmstadt.de>
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Fri, 7 Sep 2001, Charles Sandmann wrote:
> What OS? What version of make?
The OS is a german version of Windows 95 (4.00.950).
This OS has been bought 1996. Whatever new drivers MS may have uploaded
for this OS version, I have never downloaded and installed them.
The OS is installed from the original 1,44 MB disks as it has been bought.
If there is some software to get more info about the OS, please let me know
and I will run it.
This is config.sys:

DEVICE=C:\WINDOWS\HIMEM.SYS /A20CONTROL:ON /TESTMEM:OFF /VERBOSE
DEVICE=C:\WINDOWS\EMM386.EXE OFF X=A000-AFFF I=B000-B7FF X=B800-BFFF X=C000-C7FF I=C800-CFFF I=D000-DFFF I=E000-EFFF FRAME=NONE NOEMS NOVCPI VERBOSE
DOS=HIGH,UMB
DEVICEHIGH=C:\WINDOWS\COMMAND\DRVSPACE.SYS /MOVE
DEVICEHIGH=C:\WINDOWS\SETVER.EXE
DEVICEHIGH=C:\WINDOWS\COMMAND\DISPLAY.SYS CON=(EGA,,1)
COUNTRY=049,850,C:\WINDOWS\COMMAND\COUNTRY.SYS
FILESHIGH=50
STACKSHIGH=9,256
BUFFERSHIGH=10
LASTDRIVEHIGH=Z
SHELL=C:\WINDOWS\COMMAND.COM C:\WINDOWS /E:5120 /P

and this is autoexec.bat:

SET TEMP=Z:\TMP
SET TMP=Z:\TMP
SET TMPDIR=Z:/TMP
PROMPT $p$g

SET DJGPP=d:/cvs/djgpp.env
SET PATH=D:\CVS\BIN;E:\F-PROT;%PATH%

C:\WINDOWS\COMMAND\MODE CON CODEPAGE PREPARE=((850) C:\WINDOWS\COMMAND\EGA.CPI)
C:\WINDOWS\COMMAND\MODE CON CODEPAGE SELECT=850
LOADHIGH C:\WINDOWS\COMMAND\KEYB GR,,C:\WINDOWS\COMMAND\KEYBOARD.SYS
LOADHIGH C:\WINDOWS\COMMAND\DOSKEY.COM

I am using a stock DJGPP installation. Especially, stock bsh204b.zip, mak3791b.zip,
bnu2112b.zip and djdev203.zip. I have completely removed all gcc-3.0 compiler packages
and installed all gcc-3.0.1 compiler packages (Build 2001-08-15). I have replaced
the cc1.exe program with the new one from Andris FTP site. This new one has not
been stripped.


> The fact that it sometimes works says to me this is either an unintialized
> variable or subject to external events (like a timer interrupt).
Only FYI: There have never been installed any kind of virus scanner nor screen saver
on the system. When compiling, the only active program is the DOS window. No intentional
background activity (like text editing, sending data to the printer, etc) have been done.


> Does it crash if you run cc1 individually (not from GCC? do gcc -v and
> manually do the CC1 step)
Yes, it crashes in the same way.


> I would try building without selector freeing and see if that fixes.
> Try building with the crt0 flag to zero memory.
I have downloaded todays CVS libc. I will try to recompile at least the c-compiler
and see what happens.

On Fri, 07 Sep 2001, Eli Zaretskii wrote:
> Juan, does this happen when compiling any program, or just when
> building the library?  For example, can you build a large GNU package,
> or does it crash there as well?
It happens with all packages I have tested. This are flex, m4, make3791, gdbm and sed30280.
I have compiled from a DOS window in Win95 and from plain DOS (of Win95).
The failure is of the same form for all packages I have tested, so I will show only
the results for sed.


1) Compiling sed30280 in a DOS window:

d:/cvs/bin/make.exe  all-recursive
make.exe[1]: Entering directory `z:/tmp/sed'
Making all in djgpp
make.exe[2]: Entering directory `z:/tmp/sed/djgpp'
make.exe[2]: Nothing to be done for `all'.
make.exe[2]: Leaving directory `z:/tmp/sed/djgpp'
Making all in doc
make.exe[2]: Entering directory `z:/tmp/sed/doc'
make.exe[2]: Nothing to be done for `all'.
make.exe[2]: Leaving directory `z:/tmp/sed/doc'
Making all in lib
make.exe[2]: Entering directory `z:/tmp/sed/lib'
gcc -DHAVE_CONFIG_H -I. -I. -I..     -g -O2 -c getopt1.c
gcc -DHAVE_CONFIG_H -I. -I. -I..     -g -O2 -c getopt.c
Exiting due to signal SIGSEGV
General Protection Fault at eip=00240a7d
eax=000002a7 ebx=00240b84 ecx=00000010 edx=00000000 esi=00240b84 edi=ffffffa4
ebp=00000fbc esp=00000fbc program=D:\CVS\LIB\GCC-LIB\DJGPP\3.01\CC1.EXE
cs: sel=029f  base=82cc7000  limit=004affff
ds: sel=02a7  base=82cc7000  limit=004affff
es: sel=02a7  base=82cc7000  limit=004affff
fs: sel=027f  base=00022720  limit=0000ffff
gs: sel=02b7  base=00000000  limit=0010ffff
ss: sel=0173  invalid
App stack: [00346978..002c6978]  Exceptn stack: [002c63c0..002c4480]

Call frame traceback EIPs:
  0x00240a7d ___djgpp_exception_table+301

2) Compiling sed30280 on plain DOS:
d:/cvs/bin/make.exe  all-recursive
make.exe[1]: Entering directory `z:/tmp/sed'
Making all in djgpp
make.exe[2]: Entering directory `z:/tmp/sed/djgpp'
make.exe[2]: Nothing to be done for `all'.
make.exe[2]: Leaving directory `z:/tmp/sed/djgpp'
Making all in doc
make.exe[2]: Entering directory `z:/tmp/sed/doc'
make.exe[2]: Nothing to be done for `all'.
make.exe[2]: Leaving directory `z:/tmp/sed/doc'
Making all in lib
make.exe[2]: Entering directory `z:/tmp/sed/lib'
gcc -DHAVE_CONFIG_H -I. -I. -I..     -g -O2 -c getopt.c
Exiting due to signal SIGSEGV
Page fault at eip=001c0df1, error=0004
eax=00000002 ebx=00000008 ecx=00000002 edx=00000000 esi=00000002 edi=0019a59c
ebp=003461e8 esp=00345cc0 program=d:/cvs/bin/../lib/gcc-lib/djgpp/3.01/cc1.exe
cs: sel=0227  base=105b0000  limit=004affff
ds: sel=022f  base=105b0000  limit=004affff
es: sel=022f  base=105b0000  limit=004affff
fs: sel=020f  base=0003b540  limit=0000ffff
gs: sel=023f  base=00000000  limit=0010ffff
ss: sel=022f  base=105b0000  limit=004affff
App stack: [00346978..002c6978]  Exceptn stack: [002c63c0..002c4480]

Call frame traceback EIPs:
  0x001c0df1 _find_reloads+737, line ?? of reload.c
  0x0011ca15 _calculate_needs_all_insns+373, line ?? of reload1.c
  0x0011b737 _reload+1239, line ?? of reload1.c
  0x0018058a _global_alloc+1546, line ?? of global.c
  0x000569e0 _rest_of_compilation+4492, line 3474 of toplev.c
  0x0001bc57 _c_expand_body+263, line 6784 of c-decl.c
  0x0001ba1a _finish_function+170, line 6702 of c-decl.c
  0x00008eec _yyparse_1+3996, line 325 of c-parse.c
  0x000550cd _compile_file+1145, line 2369 of toplev.c
  0x0005a69e _main+2082, line 4990 of toplev.c
  0x00240942 ___crt1_startup+178
make.exe[2]: *** [getopt.o] Error 1
make.exe[2]: Leaving directory `z:/tmp/sed/lib'
make.exe[1]: *** [all-recursive] Error 1
make.exe[1]: Leaving directory `z:/tmp/sed'
make.exe: *** [all-recursive-am] Error 2

Please note the traceback for all other packages is identical to this two
tracebacks.

Silly programs like:

#include <stdio.h>
main()
{
  int i;
  for (i=0;i<10000;i++)
    printf("i=%i\n",i);
}

can be compiled without difficulty.


Regards,
Guerrero, Juan Manuel

- Raw text -


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