[Xquartz-dev] 2.3.2_beta3

Jeremy Huddleston jeremyhu at macports.org
Tue Nov 11 14:53:14 PST 2008


This is a bug in glibtool not setting the correct compat version in  
dylibs...

<rdar://problem/6351733> glibtool sets incorrect current/compatibility  
version on dylibs

Here's an example from fontconfig (my comments from that above radar):

2008.11.07 11:23 Jeremy Huddleston:
10.5.4 contained fontconfig-2.4.1 (the 1.1 / 3.0.0 version)
10.5.5 contained fontconfig-2.5.0 (the 1.3 / 5.0.0 version)

The 1.1.0 version was kept around because it wasn't nuked by the SU.   
A vanilla install of SULeoGaia should not contain the 1.1.0 version.

As far as compatability goes, on the fontconfig website:
"These also apply to 2.5 and 2.6 which are ABI and API compatible with  
2.4."

The file is created with libtool using the following in Makefile.am:
libfontconfig_la_LDFLAGS = -version-info @LIBT_VERSION_INFO@

configure.in:
LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"

2.5.0 had:
LIBT_CURRENT=4
LIBT_REVISION=0
LIBT_AGE=3

2.4.1 had:
LT_CURRENT=2
LT_REVISION=0
LT_AGE=1

Note:
bump revision when fixing bugs
bump current and age, reset revision to zero when adding APIs
bump current, leave age, reset revision to zero when changing/removing  
APIS

So API was added "twice" without changing/removing API.

This looks like a libtool bug.  Libtool is using the LIBT_CURRENT as  
the dylib compat version ... is should be:

compat version = CURRENT - AGE . 0 . 0
current version = CURRENT - AGE . AGE . REVISION

<snip/>

2008.11.08 14:24 Jeremy Huddleston:
After thinking about this a bit, I realized the situation is not as  
dire as I had once thought.

The library name is libfontconfig.1.dylib ... If there was an ABI  
breakage bump, the *name* would be libfontconfig.2.dylib ... so we can  
actually get away with using compat version = 1.0.0 for all cases...  
then just do:

current = CURRENT + 1 . REVISION . 0 (same as what is done now ... my  
comment above is wrong)
compat = 1.0.0 (instead of CURRENT + 1 . 0 . 0 which it is now...)

The library name itself takes care of ensuring the ABI compatability





On Nov 11, 2008, at 14:39, William Davis wrote:

> macintosh:~ frstan$ port info libpixman
> libpixman 0.12.0, Revision 1, graphics/libpixman (Variants: universal)
> http://www.x.org/
>
> libpixman is a generic library for manipulating pixel regions. A  
> PixRegion is a set of Y-X banded rectangles that cover the desired  
> region.
>
> Platforms: darwin
> Maintainers: ryandesign at macports.org
> macintosh:~ frstan$
>
>
> Begin forwarded message:
>
>> From: Mike Krogh <mfkrogh at ensight.com>
>> Date: November 11, 2008 5:27:32 PM EST
>> To: Developer talk about Xquartz <xquartz-dev at lists.macosforge.org>
>> Subject: Re: [Xquartz-dev] 2.3.2_beta3
>> Reply-To: Developer talk about Xquartz <xquartz-dev at lists.macosforge.org 
>> >
>>
>>
>> Turns out the CrashLog has a clue.  But I'm not sure how to resolve  
>> it:
>>
>> Dyld Error Message:
>> Library not loaded: /usr/X11/lib/libpixman-1.0.dylib
>> Referenced from: /Applications/Utilities/X11.app/Contents/MacOS/X11
>> Reason: Incompatible library version: X11 requires version 13.0.0  
>> or later, but libpixman-1.0.dylib provides version 12.0.0
>>
>> On Nov 11, 2008, at 5:21 PM, Mike Krogh wrote:
>>
>>> Hi,
>>>
>>> I just installed 2.3.2_beta3 on my Leopard 10.5.5 MacBook and am  
>>> having several problems with our X11 based application now.
>>>
>>> First, I tried to install X11-2.3.1.pkg after trying 2.3.2-beta3  
>>> but it crashes every time I try to start the X11 server.  I've  
>>> rebooted, reinstall a couple of times but no luck.  X11 now just  
>>> crashes immediately.  How does one downgrade X11?
>>>
>>> Second, at least with 2.3.2_beta3 our application's dialogs now  
>>> frequently, but not always, pop to the upper left corner of the  
>>> desktop (dual monitors) after twiddling some of the dialog's  
>>> widgets.
>>>
>>> Third, the application opens multiple connections to the X server  
>>> since it uses both Motif and QT4.  With 2.3.2_beta3, some dialogs  
>>> created via PyQT are now causing the X11 server to crash; the main  
>>> app is Motif based.
>>>
>>> Unfortunately, I have not been keeping up with all the 2.3.x  
>>> updates so I don't know how far back this problem goes.  Prior to  
>>> this I was running 2.2.2 without these problems.  I'll be happy to  
>>> try the various 2.2.x and 2.3.x release to see when the problem  
>>> was introduced if someone can tell me how to properly downgrade.
>>>
>>> Thanks!
>>>
>>> Mike
>>>
>>>
>>
>> _______________________________________________
>> Xquartz-dev mailing list
>> Xquartz-dev at lists.macosforge.org
>> http://lists.macosforge.org/mailman/listinfo.cgi/xquartz-dev
>
>
>
> William Davis
> frstanATbellsouthDOTnet
> Mac OS X.5.5 Darwin 9.5.0
> XQuartz 2.3.2 (xorg-server 1.4.2-apple21)
> Mac Mini Intel Duo @ 1.86 GHz
>
> Mundus vult decepi, ego non
>
> _______________________________________________
> macports-dev mailing list
> macports-dev at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev



More information about the macports-dev mailing list