delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/07/29/02:20:10

Message-Id: <200007290619.JAA10412@mailgw1.netvision.net.il>
Date: Sat, 29 Jul 2000 09:18:32 +0200
To: Bob McGowan <rmcgowan AT veritas DOT com>
X-Mailer: Emacs 20.6 (via feedmail 8.2.emacs20_6 I) and Blat ver 1.8.5b
From: "Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il>
CC: djgpp AT delorie DOT com
In-reply-to: <3982099F.4EE7D216@veritas.com> (message from Bob McGowan on Fri,
28 Jul 2000 15:30:55 -0700)
Subject: Re: Cross-compiler questions, re errors
References: <3982099F DOT 4EE7D216 AT veritas DOT com>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> Date: Fri, 28 Jul 2000 15:30:55 -0700
> From: Bob McGowan <rmcgowan AT veritas DOT com>
> 
> Then there are two compile errors relating to header files.  These are
> the files I made available in /usr/local/i586-pc-msdosdjgpp/include per
> the instructions (except I just copied them there rather than making
> symbolic links).  The errors were previous declaration of _sizt_t and
> _wchar_t symbols.

This is a known issue with current versions of GCC: it uses its own
headers during the build process which define data types, such as
size_t and wchar_t, in a way that conflicts with DJGPP headers'
definitions of these very data types.

The solution is to hack one of these headers so that only one typedef
is seen by the compiler.

> (I've tried commenting
> out the two __DJ_... items, and that got rid of the errors, but I had
> other errors of similar nature latter and don't want make more "blind"
> changes).

You can try conditioning the typedefs in GCC's headers by things like
this:

  #ifndef __DJ_size_t
  ... the GCC typedef here ...
  #endif

If you look closer at sys/djtypes.h, you will see that these __DJ_*
symbols are designed to be guards against multiple typedefs.  Simply
use them in the headers which come with GCC distribution.

- Raw text -


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