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 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: <002701c95f06$c7c2e190$4001a8c0 AT mycomputer> <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> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes 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 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/