From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25263 invoked by alias); 20 Jul 2006 19:41:04 -0000 Received: (qmail 25254 invoked by uid 22791); 20 Jul 2006 19:41:03 -0000 X-Spam-Check-By: sourceware.org Received: from main.gmane.org (HELO ciao.gmane.org) (80.91.229.2) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 20 Jul 2006 19:40:57 +0000 Received: from root by ciao.gmane.org with local (Exim 4.43) id 1G3eNQ-0002p9-UZ for cygwin-talk@cygwin.com; Thu, 20 Jul 2006 21:40:05 +0200 Received: from 65.207.213.226 ([65.207.213.226]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 20 Jul 2006 21:40:04 +0200 Received: from mwoehlke by 65.207.213.226 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 20 Jul 2006 21:40:04 +0200 To: cygwin-talk@cygwin.com From: mwoehlke Subject: Re: Compiling euchre 0.7 n cygwin Date: Thu, 20 Jul 2006 19:41:00 -0000 Message-ID: References: <033901c6ac28$c08e5320$a501a8c0@CAM.ARTIMI.COM> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit User-Agent: Thunderbird 1.5.0.4 (X11/20060516) In-Reply-To: X-IsSubscribed: yes Mailing-List: contact cygwin-talk-help@cygwin.com; run by ezmlm Precedence: bulk List-Subscribe: List-Post: List-Help: , Sender: cygwin-talk-owner@cygwin.com Reply-To: The Cygwin-Talk Maiming List X-SW-Source: 2006-q3/txt/msg00036.txt.bz2 mwoehlke wrote: > TITTTLing Naturally, I meant that I *meant* to TITTTL :-) Sorry 'bout that. > Dave Korn wrote: >> On 20 July 2006 18:40, mwoehlke wrote: >>> Laurent Duperval wrote: >>>> Buster wrote: >>>>> This is not a Cygwin-specific problem. In >>>>> euchre-0.7/src/gui/Makefile.am, @GTK_LIBS@ should come at the end of >>>>> the list of libraries to link, instead of at the beginning. Further >>>>> questions (for example, about why 'make install' fails while trying to >>>>> invoke automake -- sorry, it's beyond me) should be directed to the >>>>> package maintainer. >>>> Excellent! Changing the order of the libs fixed the problem. >>>> >>>> I ended up having to change it directly in the Makefile instead of >>>> Makefile.am (I probably could've done it in Makefile.in also). >>>> >>>> The reason I thought it was a Cygwin issue is that the same code >>>> compiles fine on Linux (except for a minor ifstream issue). >>> Right... Linux is forgiving about link order. Most platforms aren't. >> >> Isn't it actually more to do with the fact that Linux tends to use >> shared >> libs, and so if the link order is wrong you get an executable with >> unresolved >> symbols in it, but then those unresolved symbols get resolved anyway at >> runtime when the library is loaded by ld.so, whereas here on cygwin we >> tend to >> use static link libs, even when we're linking against a .dll, and so >> don't get >> the equivalent 'second chance' to resolve? > > Well, sure, and the fact that the linker *gives* you that second chance. > Most linkers will fail if there are unresolved symbols, so in that > sense, Linux ld is more forgiving. The order issue is that if you > specify the lib before the object, it doesn't know what to import from > the lib (but I think it stills makes a note that that lib should be > loaded, no?). -- Matthew "We're all mad here. I'm mad. You're mad... You must be, or you wouldn't have come here." -- The Cheshire Cat