www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/02/21/19:48:43

Date: Tue, 21 Feb 95 16:28:25 PST
From: KUBLER AT MASS DOT dnet DOT hac DOT com
To: ARPA::"djgpp AT sun DOT soe DOT clarkson DOT edu"@hac2arpa.hac.com

Hello, 
I have a constant problem with gcc 2.6.3 including maint release 4.
Any undeclared symbol in any compilation causes a crash.
I searched the Turnbull archives for a similar problem and came up
with a close match.  My problem occurs in DOS or in Windows,
except in Windows the following message is not printed.

"Segmentation violation in pointer 0x00000405 at d8:50544"

Now follows what I captured in the Windows box:

>test.cc: In function `int main(int, char **)':
>test.cc:9: `source' undeclared (first use this function)
>test.cc:9: (Each undeclared identifier is reported only once
>test.cc:9: for each function it appears in.)
>test.cc:9: `target' undeclared (first use this function)
>General Protection Fault at eip=50553
>eax=74000478 ebx=001c8e30 ecx=001c8e30 edx=001c8e30 esi=001b3558 edi=001cea14
>ebp=001ac3b4 esp=001ac38c cs=137 ds=12f es=12f fs=12f gs=147 ss=13f \
>cr2=0000cff0
>Call frame traceback EIPs:
>  0x00050553
>  0x0004ff72
>  0x000500fc
>  0x0004fb17
>  0x000492c9
>  0x00071ddb
>  0x000768f2

I tried the advice in the latest FAQ and set FRAME=NO for EMM386.
In that case I get the error AND a total system crash that needs a
a HW reboot.  And the current directory is clobbered!

My system is a 486dx2-66, with DOS 6.2, Win 3.1, and Microsoft's
EMM386.  

Below is a report I pulled from the archives, as of Monday Vadim
had not solved or fixed the problem.  My system doesn't show so
much diagnostic data, perhaps his data will help.



0,,
*** EOOH ***
Date: Tue, 24 Jan 1995 19:53:30 -0300
From: "Sinolits Vadim V." <vvs AT nsrd DOT npi DOT msu DOT su>
Subject: Re: djgpp
To: turnbull AT shako DOT sk DOT tsukuba DOT ac DOT jp
Message-ID: <Pine DOT 3 DOT 89 DOT 9501241926 DOT D116-0100000 AT nsrd DOT npi DOT msu DOT su>

On Tue, 20 Dec 1994, Stephen Turnbull wrote:

>    Hello!
>    I don't know how to run djgpp on my i486DX (50MHz,16Mb RAM).
>    When I run gcc it says  'Unsupported int 0x06 ' and
>    prints a list of registers an their contents.
> 
> Try "go32" at the DOS prompt.  Maybe you have an old GO32 on the path.
> It should tell you that it is version 1.12 (perhaps with .maint1 or
> .maint2).
> 
>    I think, that int6 shows that illegal operation (for i486) was.  
>    But somtimes under emm386 gcc can compile but not all of the
>    programms. 
>    My djgpp version  is 2.60.
> 
> You should also say what is in your config.sys and autoexec.bat.
> Otherwise noone can know what conflicts might be.
> 
>    Any  answer is wellcome.
>    I'm stopping my works.
>    With best wishes!
> 
>    VVS.
>    vvs AT npi DOT msu DOT su
>    You can talk to me by talk.
> 
> I would suggest that you resend this to the whole list, and include
> what TSRs you use and especially any memory managers.  As far as I can
> tell, you only sent it to me.
>     --Steve
> 

Hello Steve!

I cannot execute gcc.exe. Never.
It is very unstable with emm386.
Sometimes gcc compiles test programs.
I have i486DX50/16MbRAM. And configuration:

----my config.sys:-----------------------

break=on
FILES=40
BUFFERS=40
STACKS=9,256
LASTDRIVE=Z
shell=c:\dos5\command.com /p /E:4096

---------my autoexec.bat:-----------------

set comspec=c:\dos5\command.com
path=c:\;c:\norton;c:\dos5;c:\djgpp;c:\djgpp\bin;c:\arch;c:\local;c:\gnuplot;c:\exp;
set DJGPP=c:/djgpp/djgpp.env
set TMPDIR=c:/djgpp/tmp1
set GO32TMP=c:/djgpp/tmp2
set GO32=driver c:/djgpp/drivers/vga.grd gw 640 gh 480 2r1 core gjgpp.cor
call c:\djgpp\bin\setdjgpp.bat c:\djgpp c:/djgpp

-------------core files and stdout:--------------------
---------while compiling test for window library (and others)---------
====================
eax=00000401 ebx=00187e30 ecx=00187e30 edx=00187e30 esi=00172660 edi=0018b400
ebp=7ffff6c4 esp=7ffff69c cs=d8 ds=48 es=48 fs=48 gs=38 ss=48 cr2=00000405
Call frame traceback EIPs:
  0x00050544
  0x0004ff72
  0x000500fc
  0x0004fb17
  0x000492c9
  0x00071ddb
  0x000768f2

Contents of stack:
  stack[0x7ffff69c] = 0x00174030	  stack[0x7ffff69e] = 0xf5980017
  stack[0x7ffff6a0] = 0x0018f598	  stack[0x7ffff6a2] = 0x00030018
  stack[0x7ffff6a4] = 0x00000003	  stack[0x7ffff6a6] = 0x00170000
  stack[0x7ffff6a8] = 0x00000017	  stack[0x7ffff6aa] = 0x00020000
  stack[0x7ffff6ac] = 0x00000002	  stack[0x7ffff6ae] = 0x00000000
  stack[0x7ffff6b0] = 0x00000000	  stack[0x7ffff6b2] = 0x012e0000
  stack[0x7ffff6b4] = 0x0005012e	  stack[0x7ffff6b6] = 0x26880005
  stack[0x7ffff6b8] = 0x00172688	  stack[0x7ffff6ba] = 0x26600017
  stack[0x7ffff6bc] = 0x00172660	  stack[0x7ffff6be] = 0xf55c0017
  stack[0x7ffff6c0] = 0x0018f55c	  stack[0x7ffff6c2] = 0xf7040018
  stack[0x7ffff6c4] = 0x7ffff704	  stack[0x7ffff6c6] = 0xff727fff
  stack[0x7ffff6c8] = 0x0004ff72	  stack[0x7ffff6ca] = 0x00000004
  stack[0x7ffff6cc] = 0x00000000	  stack[0x7ffff6ce] = 0xf5840000
  stack[0x7ffff6d0] = 0x0018f584	  stack[0x7ffff6d2] = 0x25d40018
  stack[0x7ffff6d4] = 0x001725d4	  stack[0x7ffff6d6] = 0x1f280017
  stack[0x7ffff6d8] = 0x00191f28	  stack[0x7ffff6da] = 0x00030019
  stack[0x7ffff6dc] = 0x00000003	  stack[0x7ffff6de] = 0x1f280000
  stack[0x7ffff6e0] = 0x00191f28	  stack[0x7ffff6e2] = 0xfaa80019
  stack[0x7ffff6e4] = 0x0026faa8	  stack[0x7ffff6e6] = 0x25d40026
  stack[0x7ffff6e8] = 0x001725d4	  stack[0x7ffff6ea] = 0x00020017

====================
Debug at eip=1df32
eax=00000375 ebx=00000021 ecx=00000000 edx=00000000 esi=00000000 edi=7ffff174
ebp=7ffff114 esp=7ffff0f4 cs=d8 ds=48 es=48 fs=48 gs=48 ss=48 cr2=0000dec4
Call frame traceback EIPs:
  0x0001df32
  0x00000000

Contents of stack:
  stack[0x7ffff0f4] = 0x00000a92	  stack[0x7ffff0f6] = 0x00000000
  stack[0x7ffff0f8] = 0x00000000	  stack[0x7ffff0fa] = 0x00000000
  stack[0x7ffff0fc] = 0x00000000	  stack[0x7ffff0fe] = 0x00000000
  stack[0x7ffff100] = 0x00000000	  stack[0x7ffff102] = 0x00000000
  stack[0x7ffff104] = 0x00000000	  stack[0x7ffff106] = 0x00000000
  stack[0x7ffff108] = 0x00000000	  stack[0x7ffff10a] = 0x50980000
  stack[0x7ffff10c] = 0x00285098	  stack[0x7ffff10e] = 0xf1400028
  stack[0x7ffff110] = 0x7ffff140	  stack[0x7ffff112] = 0x502e7fff
  stack[0x7ffff114] = 0x0000502e	  stack[0x7ffff116] = 0x00000000
  stack[0x7ffff118] = 0x00000000	  stack[0x7ffff11a] = 0x50980000
  stack[0x7ffff11c] = 0x00285098	  stack[0x7ffff11e] = 0x00010028
  stack[0x7ffff120] = 0x00000001	  stack[0x7ffff122] = 0x50740000
  stack[0x7ffff124] = 0x001a5074	  stack[0x7ffff126] = 0x5074001a
  stack[0x7ffff128] = 0x001a5074	  stack[0x7ffff12a] = 0xfc44001a
  stack[0x7ffff12c] = 0x0027fc44	  stack[0x7ffff12e] = 0xf1500027
  stack[0x7ffff130] = 0x7ffff150	  stack[0x7ffff132] = 0x93067fff
  stack[0x7ffff134] = 0x00089306	  stack[0x7ffff136] = 0x50d80008
  stack[0x7ffff138] = 0x002850d8	  stack[0x7ffff13a] = 0x50740028
  stack[0x7ffff13c] = 0x001a5074	  stack[0x7ffff13e] = 0x5074001a
  stack[0x7ffff140] = 0x001a5074	  stack[0x7ffff142] = 0x0000001a

------------and stdout:

gcc -O -I../inc -c test.cc
Error: not enough memory to run go32!
(it was the first attempt ) 
make.exe: *** [test.o] Error 1

gcc -O -I../inc -c test.cc
In file included from c:/djgpp/include/errno.h:46,
                 from ../inc/aecc.h:46,
                 from ../inc/aedef.h:35,
                 from ../inc/w.h:22,
                 from test.cc:1:
c:/djgpp/include/djgppstd.h:57: warning: declaration of `volatile void _exit(int)'
c:/djgpp/include/djgppstd.h:57: warning: conflicts with built-in declaration `void _exit(int)'
c:/djgpp/include/djgppstd.h:58: warning: declaration of `volatile void abort()'
c:/djgpp/include/djgppstd.h:58: warning: conflicts with built-in declaration `void abort()'
c:/djgpp/include/djgppstd.h:97: warning: declaration of `volatile void exit(int)'
c:/djgpp/include/djgppstd.h:97: warning: conflicts with built-in declaration `void exit(int)'
c:/djgpp/include/djgppstd.h:297: warning: declaration of `void * alloca(unsigned int)'
c:/djgpp/include/djgppstd.h:297: warning: conflicts with built-in declaration `void * alloca(long unsigned int)'
In file included from ../inc/aedef.h:35,
                 from ../inc/w.h:22,
                 from test.cc:1:
../inc/aecc.h:61: declaration of C function `int atexit(void (*)(...))' conflicts with
c:/djgpp/include/djgppstd.h:63: previous declaration `int atexit(void (*)())' here
../inc/aecc.h:61: conflicting types for `int atexit(void (*)(...))'
c:/djgpp/include/djgppstd.h:63: previous declaration as `int atexit(void (*)())'
../inc/attrmap.h: In method `void attribmap::setmap(unsigned char *, int = MAPSIZE)':
In file included from ../inc/w.h:31,
                 from test.cc:1:
../inc/attrmap.h:36: call of overloaded `min' is ambiguous
../inc/aedef.h:79: candidates are: min(short int, short int)
../inc/aedef.h:76:                 min(long int, long int)
Segmentation violation in pointer 0x00000405 at d8:50544

EXCEPTION OCCURRED!  Information dumped to core file:
    "gjgpp.cor"   
Abnormal program termination
Unsupported INT 0x01

EXCEPTION OCCURRED!  Information dumped to core file:
    "gjgpp.cor"   

------------------------------------------
So, my work stoppes! I can do nothing: no debuggers (gdb.. :-(  ).
Linux works on my computer well.

Have a nice day!
Vadim.

- Raw text -


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