Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Sep 2005 11:28:53 +0300
From:      Panagiotis Astithas <past@ebs.gr>
To:        Joe Marcus Clarke <marcus@marcuscom.com>
Cc:        gnome <freebsd-gnome@freebsd.org>
Subject:   Re: About gtk library versions and dlopen()
Message-ID:  <433902C5.8080507@ebs.gr>
In-Reply-To: <1127805775.50068.44.camel@shumai.marcuscom.com>
References:  <4338F205.7030808@ebs.gr> <1127805775.50068.44.camel@shumai.marcuscom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Joe Marcus Clarke wrote:
> On Tue, 2005-09-27 at 10:17 +0300, Panagiotis Astithas wrote:
> 
>>I see that in the marcuscom repository the gtk libraries have a version 
>>of 0 (libgtk-x11-2.0.so.0), whereas the current stable port has a 
>>version of 600 (libgtk-x11-2.0.so.600). Could someone please explain the 
>>logic behind the gtk library versioning and whether the committed gnome 
>>2.12 will keep the 0 versions?
> 
> 
> The .0 versions are more inline with Linux's versions.  Jean-Yves
> devised a libtool hack to restore "proper" library versioning, so we
> will keep these .0 versions for as long as the Linux guys do.

Great, thanks.

>>The main issue I'm trying to solve is whether we can dlopen a shared 
>>library on FreeBSD by specifying a version number of 0 and let the 
>>dynamic linker load the version that is currently installed. It seems 
>>that Eclipse on Linux and other Unix systems does this and they claim we 
>>have a weird linker.
> 
> 
> Yes, we can.  However, in the past we had versions that changed with
> each minor release.  Now we are trying to be more consistent with other
> platforms so things like dlopen'ing libraries will work out-of-the-box.

Excellent. Out of curiosity, in the current scheme of things, how can I 
dlopen() a libfoo.so.0 and get the existing libfoo.so.600 loaded? Do I 
need something other than RTLD_LAZY?

Thanks,

Panagiotis



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?433902C5.8080507>