X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; q=dns; s= default; b=r9JXRce+fAgfO25HnpAv1HKofZIlhjtznJ2pErpDcqriQ3UK3kUwb +fEBGTXnoeDMXA3T+5rt1OIjLS56e7RurzheC92YvnZd/nf+N7CuQ5EwsZa17qtn 3Tr5xxbi5wRQ/gd4yLRehRiidswcRc1GaDPmiqmJZqk6dbd+8naTl8= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; s=default; bh=K/bGz63W9Ckhj25md6KFZvEU72M=; b=gJjO1lw5zeNt0nY+JS7hbUiICcKo wGJ5G80eL0ERfmZOd6veu4cJ9EBg22ISKD+tWpNpU4t/qB2ji4TycpvvoHe+6Mya QIZLQz4vpXJ98stkS8YkS3iq9Pq71LvbPUl/V9AOxQ7ZTkV5jMaSa+LbIjre6lmU JIq7+QVLpOMY8kk= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Spam-SWARE-Status: No, score=-1.1 required=5.0 tests=AWL,BAYES_00,RDNS_NONE autolearn=no version=3.3.1 Date: Thu, 1 Aug 2013 17:16:01 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: building Perl module DBD-ODBC-4.3 under 64-bit cygwin Message-ID: <20130801151601.GT4166@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <3BA6644C396CE44F83F988D688C72A73015956B7EE AT NL0230MBX08N1 DOT DIR DOT slb DOT com> <20130801140228 DOT GQ4166 AT calimero DOT vinschen DOT de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20130801140228.GQ4166@calimero.vinschen.de> User-Agent: Mutt/1.5.21 (2010-09-15) On Aug 1 16:02, Corinna Vinschen wrote: > On Aug 1 12:57, Simon Barnes wrote: > > I'm having difficulty with this and would appreciate any suggestions. It does build under 32-bit cygwin. > > That's a good place to point to my extended "how to port to 64 bit" FAQ, > starting here: > > http://cygwin.com/faq/faq.html#faq.programming.64bitporting > > Please read this first. > > Basically, what you see here... > > > /usr/local/include/sqltypes.h:261:33: error: conflicting types for 'ULONG' > > typedef unsigned long ULONG; > > ^ > > In file included from /usr/include/w32api/windows.h:69:0, > > from dbdodbc.h:6, > > from ODBC.h:8, > > from ODBC.xs:1: > > /usr/include/w32api/windef.h:25:27: note: previous declaration of 'ULONG' was here > > typedef unsigned __LONG32 ULONG; > > ^ > > Makefile:390: recipe for target `ODBC.o' failed > > ...is a typical type conflict. ULONG is a Windows type defined as > unsigned long in the Win32 API. The Win32 data model is LLP64, so > unsigned long is 4 bytes. However, Cygwin is LP64, so unsigned long is > 8 bytes. Therefore the `typedef unsigned long ULONG;' is wrong for 64 > bit. Either drop the definition entirely, or redefine it matching the > data model: > > #ifdef __LP64__ > typedef unsigned int ULONG; > #else > typedef unsigned long ULONG; > #endif Btw., that's what the __LONG32 macro in the mingw-w64 headers is for... Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple