From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32654 invoked by alias); 7 Sep 2011 01:52:32 -0000 Received: (qmail 32640 invoked by uid 22791); 7 Sep 2011 01:52:30 -0000 X-SWARE-Spam-Status: No, hits=-1.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,UNPARSEABLE_RELAY X-Spam-Check-By: sourceware.org Received: from nm10-vm0.bullet.mail.sp2.yahoo.com (HELO nm10-vm0.bullet.mail.sp2.yahoo.com) (98.139.91.198) by sourceware.org (qpsmtpd/0.43rc1) with SMTP; Wed, 07 Sep 2011 01:52:08 +0000 Received: from [98.139.91.62] by nm10.bullet.mail.sp2.yahoo.com with NNFMP; 07 Sep 2011 01:52:07 -0000 Received: from [208.71.42.210] by tm2.bullet.mail.sp2.yahoo.com with NNFMP; 07 Sep 2011 01:52:07 -0000 Received: from [127.0.0.1] by smtp221.mail.gq1.yahoo.com with NNFMP; 07 Sep 2011 01:52:07 -0000 X-Yahoo-SMTP: jenXL62swBAWhMTL3wnej93oaS0ClBQOAKs8jbEbx_o- Received: from cgf.cx (cgf@72.70.43.200 with login) by smtp221.mail.gq1.yahoo.com with SMTP; 06 Sep 2011 18:52:06 -0700 PDT Received: from localhost (ednor.casa.cgf.cx [192.168.187.5]) by cgf.cx (Postfix) with ESMTP id B05E2428012 for ; Tue, 6 Sep 2011 21:52:05 -0400 (EDT) Date: Wed, 07 Sep 2011 01:52:00 -0000 From: Christopher Faylor To: cygwin-apps@cygwin.com Subject: Re: Building setup.exe: conflicting declarations of ssize_t Message-ID: <20110907015205.GA5508@ednor.casa.cgf.cx> Reply-To: cygwin-apps@cygwin.com Mail-Followup-To: cygwin-apps@cygwin.com References: <4E62E04D.9090109@cornell.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4E62E04D.9090109@cornell.edu> User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact cygwin-apps-help@cygwin.com; run by ezmlm Precedence: bulk Sender: cygwin-apps-owner@cygwin.com List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Mail-Followup-To: cygwin-apps@cygwin.com X-SW-Source: 2011-09/txt/msg00026.txt.bz2 On Sat, Sep 03, 2011 at 10:19:57PM -0400, Ken Brown wrote: >Building setup.exe fails as follows: > >depbase=`echo archive.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ > i686-pc-mingw32-g++ -DPACKAGE_NAME=\"setup\" -DPACKAGE_TARNAME=\"setup\" -DPACKAGE_VERSION=\"0\" -DPACKAGE_STRING=\"setup\ 0\" -DPACKAGE_BUGREPORT=\"xxx\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_LIBMINGW32=1 -DHAVE_ERRNO_H=1 -DHAVE_STRING=1 -DHAVE_STRING_H=1 -I. -DLZMA_API_STATIC -I./libgetopt++/include -Werror -Wall -Wno-uninitialized -Wpointer-arith -Wcomments -Wcast-align -Wwrite-strings -g -O2 -MT archive.o -MD -MP -MF $depbase.Tpo -c -o archive.o archive.cc &&\ > mv -f $depbase.Tpo $depbase.Po >In file included from archive.cc:26:0: >io_stream.h:37:21: error: conflicting declaration ??typedef long int ssize_t?? >/usr/i686-pc-mingw32/sys-root/mingw/include/sys/types.h:118:18: error: ??ssize_t?? has a previous declaration as ??typedef _ssize_t ssize_t?? > >The conflicting declarations result from the following recent change to the mingw-runtime package: > >2011-08-19 Chris Sutcliffe > > * include/sys/types.h (ssize_t): Defined as int as opposed to long. > >The following patch enables the build to complete, but I don't know if it's the right way to fix this: > >--- io_stream.h.orig 2009-12-18 06:59:54.000000000 -0500 >+++ io_stream.h 2011-09-03 21:14:44.664235000 -0400 >@@ -33,7 +33,7 @@ > */ > > //Where is this defined? >-#if defined(_WIN32) && ! defined(__CYGWIN__) >+#if defined(_WIN32) && ! defined(__CYGWIN__) && ! defined(HAVE_SYS_TYPES_H) > typedef signed long ssize_t; > #endif That's definitely the wrong approach to fix the problem. Why not just include sys/types.h in io_stream.h? cgf