delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/12/17/14:26:33

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00
X-Spam-Check-By: sourceware.org
Message-ID: <49495236.6080407@x-ray.at>
Date: Wed, 17 Dec 2008 20:25:42 +0100
From: Reini Urban <rurban AT x-ray DOT at>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de-AT; rv:1.8.1.18) Gecko/20081031 SeaMonkey/1.1.13
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: GTK+ externals are unresolved
References: <loom DOT 20081215T211641-645 AT post DOT gmane DOT org> <002701c95f06$c7c2e190$4001a8c0 AT mycomputer> <loom DOT 20081216T190513-304 AT post DOT gmane DOT org> <49480D5D DOT 8090002 AT x-ray DOT at> <4948117F DOT 6080208 AT users DOT sourceforge DOT net>
In-Reply-To: <4948117F.6080208@users.sourceforge.net>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Yaakov (Cygwin/X) schrieb:
> Reini Urban wrote:
>> The order of libs is wrong for $(pkg-config --libs gtk+-2.0)
>>
>> -lgtk-x11-2.0 -lgdk-x11-2.0 should be at the end.
>>
>> $ pkg-config --libs gtk+-2.0
>> -L/usr/X11R6/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0
>> -lpangoxft-1.0 -lXft -lfreetype -lz -lXrender -lXext -lfontconfig
>> -lpangox-1.0 -lX11 -lpango-1.0 -lm -lgobject-2.0 -lgmodule-2.0
>> -lglib-2.0 -lintl -liconv
> 
> No, this is correct.
> 
>> Windows need the libs in the correct order, i.e. backwards.
> 
> No, the order is as with --as-needed on Linux, and in this case, where
> all those libs are shared, the order doesn't matter at all as long as
> they come after the object files which require them.

I tend to disagree.
With the original order:
-L/usr/X11R6/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 
-lpangoxft-1.0 -lXft -lfreetype -lz -lXrender -lXext -lfontconfig 
-lpangox-1.0 -lX11 -lpango-1.0 -lm -lgobject-2.0 -lgmodule-2.0 
-lglib-2.0 -lintl -liconv

it fails to link, and with the reverse order of requires it works okay.

-L/usr/X11R6/lib -latk-1.0 -lgdk_pixbuf-2.0 -lpangoxft-1.0 -lXft 
-lfreetype -lXrender -lXext -lfontconfig -lpangox-1.0 -lpango-1.0 
-lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lgdk-x11-2.0 -lgtk-x11-2.0 -lX11 
-lz -lintl -liconv

The windows linker doesn't allow unresolved symbols at linktime, the 
linux linker does.
-- 
Reini


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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