delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2002/06/14/09:36:33

From: Richard Dawe <rich AT phekda DOT freeserve DOT co DOT uk>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Header problem when upgrading CVS djgpp.
Date: Fri, 14 Jun 2002 10:41:55 +0100
Lines: 48
Message-ID: <3D09BA63.F41B420F@phekda.freeserve.co.uk>
References: <aebnf4$vi1$1 AT dahlia DOT singnet DOT com DOT sg>
NNTP-Posting-Host: modem-87.dexfenfluramine.dialup.pol.co.uk
Mime-Version: 1.0
X-Trace: newsg4.svr.pol.co.uk 1024048288 29007 62.136.89.215 (14 Jun 2002 09:51:28 GMT)
NNTP-Posting-Date: 14 Jun 2002 09:51:28 GMT
X-Complaints-To: abuse AT theplanet DOT net
X-Mailer: Mozilla 4.77 [en] (X11; U; Linux 2.2.19 i586)
X-Accept-Language: de,fr
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Hello.

Rob Kramer wrote:
> I tried to upgrade my cross building environment to the latest DJGPP version
> in CVS. To do so, I:
> 
> - Compiled djgpp, did mkdist, unzipped -a djcrx.zip to a tmp dir.
> - Copied -rp tmp/include/* to /opt/djgpp/i586-pc-msdosdjgpp/include
> - Copied -rp tmp/lib/* to /opt/djgpp/i586-pc-msdosdjgpp/lib
> 
> But I guess this isn't the right way to do it, since now I get redefinition
> warnings:
> 
> gcc -c -gstabs+ -march=i486 -mcpu=pentium -O2 -W -Wall -Wno-unused
> -Wno-parentheses -mpreferred-stack-boundary=2 -I.. -I. -I../../include
> -o../obj/mndraw.o mndraw.c
> In file included from ../../include/allegro/base.h:27,
>                  from ../../include/allegro4.h:27,
>                  from ../mn/mnsystem.h:25,
>                  from mnsbitmap.h:36,
>                  from mndraw.c:34:
> /opt/djgpp/lib/gcc-lib/i586-pc-msdosdjgpp/2.95.3/include/stdarg.h:18:
> warning: redefinition of `va_list'
> /opt/djgpp/lib/gcc-lib/i586-pc-msdosdjgpp/2.95.3/../../../../i586-pc-msdosdjgpp/include/stdio.h:37:
> warning: `va_list' previously declared here
> 
> And ditto for size_t and others.
> FYI, allegro/base.h contains '#include <stdarg.h>', but why does it pick
> /opt/djgpp/lib/gcc-lib/i586-pc-msdosdjgpp/2.95.3/include/stdarg.h
> over /opt/djgpp/i586-pc-msdosdjgpp/include/stdarg.h ?
[snip]

I believe that gcc has its own header files, to provide certain things that
are not available in the libc headers. In particular it may use its built-in
support for memcpy, va_lists, etc. in preference to the support in the libc.

gcc's header files should include the libc header file. In the message above,
it hasn't picked one of the files over the other. It's actually including
both, but their definitions disagree.

I thought this may be because djdev203.zip had been refreshed to cope with
Windows 2000 and djcrx203.zip had not, so the headers may have been different.
But it appears that they agree. So I don't know what the above problem is.

Regards,

-- 
Richard Dawe [ http://www.phekda.freeserve.co.uk/richdawe/ ]

- Raw text -


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