www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/04/05/12:05:26

Message-Id: <199804051604.SAA21986@crimson.ihg.uni-duisburg.de>
From: michael DOT mauch AT gmx DOT de (Michael Mauch)
To: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
Cc: djgpp AT delorie DOT com, Robert Hoehne <robert DOT hoehne AT gmx DOT net>
Subject: Re: Info Zip unzip-5.32 does not compile with DJGPP/gcc-2.8.0
Date: Sun, 05 Apr 1998 18:04:10 +0200
References: <Pine DOT SUN DOT 3 DOT 91 DOT 980405155545 DOT 5976Z-100000 AT is>
In-Reply-To: <Pine.SUN.3.91.980405155545.5976Z-100000@is>
MIME-Version: 1.0

On Sun, 5 Apr 1998 16:00:24 +0300 (IDT), Eli Zaretskii wrote:

> 
> On Sun, 5 Apr 1998, Michael Mauch wrote:
> 
> > gcc2.8.0 doesn't define __DJGPP_MINOR_ anymore.
> 
> How can that be?  Does gcc 2.8.0 bypass the %DJDIR%/lib/specs file?

Yes, `gcc -v´ said "Using built-in specs", although the
%DJDIR%/lib/specs file exists. 

> How about copying the DJGPP-standard specs file into the directory where 
> 2.8.0 expects it to be?

Yes, that solves the problem. The specs file should be moved from
%DJDIR%/lib to %DJDIR%/lib/gcc-lib/djgpp/2.80, so gcc can find it.
`gcc -v´ says "Reading specs from %DJDIR%/lib/gcc-lib/djgpp/2.80/specs",
__DJGPP_MINOR__ is defined again and `unzip´ compiles happily with the
standard msdos/makefile.dj2.

I guess this should be mentioned in the readme.djg file that comes with
gcc280b.zip. At present, the text suggests that the specs file should
still reside in the lib/ directory ("Here is now a possible line
from the spec file in your lib/ directory:").

A sample output without the specs file:

|R:\DJGPP\C>gcc -v hello.c -o hello.exe
|Using builtin specs.
|gcc version 2.8.0
| r:/djgpp/lib/gcc-lib/djgpp/2.80/cpp.exe -lang-c -v -undef -D__GNUC__=2 -D__GNUC
|_MINOR__=8 -Dunix -Di386 -DGO32 -DMSDOS -DDJGPP=2 -D__unix__ -D__i386__ -D__GO32
|__ -D__MSDOS__ -D__DJGPP__=2 -D__unix -D__i386 -D__GO32 -D__MSDOS -D__DJGPP=2 -A
|system(unix) -Asystem(msdos) -Acpu(i386) -Amachine(i386) -Di386 -Asystem(unix) -
|Acpu(i386) -Amachine(i386) -D__i386__ -Asystem(unix) -Acpu(i386) -Amachine(i386)
| hello.c g:/tmp/ccaaaaaa.i
[...]

And now with the specs file in the right place:

|R:\DJGPP\C>gcc -v hello.c -o hello.exe
|Reading specs from r:/djgpp/lib/gcc-lib/djgpp/2.80/specs
|gcc version 2.8.0
| r:/djgpp/lib/gcc-lib/djgpp/2.80/cpp.exe -lang-c -v -undef -D__GNUC__=2 -D__GNUC
|_MINOR__=8 -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__i3
|86 -D__GO32 -D__MSDOS -D__DJGPP=2 -D__DJGPP_MINOR=1 -remap hello.c g:/tmp/ccaaaa
|aa.i
|GNU CPP version 2.8.0 (80386, BSD syntax)
[...]

I don't know what the `-Asystem(unix)´ and so forth in the built-in
specs mean -- gcc.info does not seem to have a reference for it. Is it
something to be concerned about?

Regards...
		Michael

- Raw text -


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