www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/01/02/06:30:30

From: Thomas Demmer <demmer AT LSTM DOT Ruhr-UNI-Bochum DOT De>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: DJGPP and NT Alpha
Date: Thu, 01 Jan 1998 15:52:50 +0100
Organization: Lehrstuhl fuer Stroemungsmechanik
Lines: 103
Message-ID: <34ABADC2.90CD0E1B@LSTM.Ruhr-UNI-Bochum.De>
References: <Pine DOT SUN DOT 3 DOT 91 DOT 971231095120 DOT 3217L-100000 AT is> <68e6c5$53g AT crcnis3 DOT unl DOT edu>
NNTP-Posting-Host: bvb.lstm.ruhr-uni-bochum.de
Mime-Version: 1.0
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

Jeffrey N Woodford wrote:
[...]
> FX!32 is installed on this machine.  I guess that does the trick...?
> I don't really know how FX!32 works.  In general I didn't think Alpha
> NT could run Intel binaries.
FX!32 is a kind of emulator that emulates Intel opcodes and can convert
them to Alpha code, so the next time it will be "more" native. So code
that doesn't use the underlying OS runs without problems. As there
is probably nothing like that, I guess it includes a more or less
smart DOS/NT/Whatever INT21 emulation layer. Hence it should work.


[...]
> Well it turned out that I needed to turn the forward slashes around to
> backslashes and change the drive letter references in my DJGPP.ENV
> file and that seemed to fix some things.  It no longer gives the
> "abnormal program termination" error, and GCC will compile simple
> "hello world" programs.  But other, more complex programs will compile
> but not run, because it says the program is too big to fit in memory
> when it clearly is not.  (The machine has 256 MB of RAM and the
> program in question is only 433 lines.)

This is quite a surprise, because I always thought the OS never gets to
see
the forward slashes and all are converted to backslashes by the libc.
Maybe LFN=Y can cause such problems?



> 
> go32-v2 gives this output:
> go32/v2 version 2.0 built Aug 12 1996 22:27:23
> Usage: go32 coff-image [args]
> Rename this to go32.exe only if you need a go32 that can run v2 binaries as
>  well as v1 binaries (old makefiles).  Put ahead of the old go32 in your PATH
>  but do not delete your old go32 - leave it in the PATH after this one.
> Set GO32_V2_DEBUG=y in the environment to get verbose output.
> 
> DPMI memory available: 13943 Kb
> DPMI swap space available: 0 Kb
> 
> Is my lack of swap space the reason why it won't run these "large" programs?
Generally not, as gcc and friends themselves are rather large programs.



> 
> I tried this simple program and the pointer d returned NULL.  Is my
> program unreasonable?  Is there an example program or something that I
> could try to see if the compiler is working correctly?
> 
> #include <stdio.h>
> #include <stdlib.h>
> 
> int main (void)
> {
>    double *d;
> 
>    d = (double *) malloc (4000000 * sizeof (double));
>    if (d == NULL) printf ("d is null!\n");
>    else free(d);
>    return (0);
> }
You ask for 31250 kB of RAM, wich is rounded up to 64000kB or so
by the malloc routine. Clearly you don't have enough DPMI memory 
availabe.

> 
> This is what gcc -v prints when it compiles the above program (called foo.c):
> 
> Reading specs from file: E:\DJGPP\lib\specs
> gcc version 2.7.2.1
>  E:\DJGPP\bin\cpp.exe -lang-c -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=7 -Dunix -Di386 -DGO32 -DMSDOS -DDJGPP=2 -DDJGPP_MINOR=1 -D__unix__ =D__i386__ -D__GO32__ -D__MSDOS__ -D__DJGPP__=2 -D__DJGPP_MINOR__=1 -D__unix -D__i386 -D__GO32 -D__MSDOS -D__DJGPP=2 -D__DJGPP_MINOR=1 foo.c E:\DJGP\tmp\ccwaaaaa
> GNU CPP version 2.7.2.1 (80386, BSD syntax)
> #include "..." search starts here:
> #include <...> search starts here:
>  .
>  E:\DJGPP\include
[...]
> End of search list.
>  E:\DJGPP\bin\cc1.exe E:\DJGPP\tmp\ccwaaaaa -quiet -dumpbase foo.c -version -o  stubify a.out -> 

slightly weird. my gcc says something like
d:/djgpp/include
...
d:/djgpp/bin\cc1-exe d:/djgpp/tmp\ccbaaaa ...

so forward and backward slahes mixed, and all lowercase.

-- 
Ciao
Tom

*************************************************************
* Thomas Demmer                                             *
* Lehrstuhl fuer Stroemungsmechanik                         *
* Ruhr-Uni-Bochum                                           *
* Universitaetsstr. 150                                     *
* D-44780  Bochum                                           *
* Tel: +49 234 700 6434                                     *
* Fax: +49 234 709 4162                                     *
* http://www.lstm.ruhr-uni-bochum.de/~demmer                *
*************************************************************

- Raw text -


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