Re: Question about dynamic and static libraries
Re: Question about dynamic and static libraries
- Subject: Re: Question about dynamic and static libraries
- From: Steve Checkoway <email@hidden>
- Date: Mon, 2 Jan 2006 08:23:17 -0800
On Dec 31, 2005, at 10:34 PM, Bill Northcott wrote:
On 01/01/2006, at 3:55 PM, Steve Checkoway wrote:
Ensuring that the version of the library you intended can be a
good thing without a doubt; however, what happens when a newer
version of a library is released and the install name of a
particular library includes the full version?
$ otool -D /usr/lib/libssl.dylib
/usr/lib/libssl.dylib:
/usr/lib/libssl.0.9.7.dylib
What happens when libcssl.0.9.8 is installed by Apple on my
computer? I will have to recompile everything against the new
version. Perhaps this isn't a fundamental flaw of install names
but if Apple has the wrong install names (or is it intended that
everyone's software break if it links with libssl and new version
is included in a future software update?) how are we to deal with
that?
I don't know what is your computer, but on mine /usr/lib/
libssl.dylib is a symlink to /usr/lib/libssl.0.9.7.dylib. Since ld
resolves the symlinks, it will the latter which is in the link
path. There is also a /usr/lib/libssl.0.9.dylib. I have never
known Apple to install a differently numbered version and drop the
old file. That is why 0.9 version is still there. This is not the
neatest, but that is price of trying to be compatible with Linux.
That is what I have too. My mistake seems to be that I assumed that
openssl would follow the convention of major.minor.bugfix for
versioning when, in fact, 0.9.8 is a major release, not a bug fix.
If the user is changing the runtime library search paths then
presumably they know what they are doing and can live with the
consequences if it doesn't work out quite as well as planned. Just
having my software be completely dependent on a bug fix version of
a library that is _very_ likely to change (http://www.openssl.org/
source/ 0.9.8a looks like the latest to me) seems like a poor
choice to me.
That why Apple don't install using bug fix names. If they want to
fix a bug they can leave the file name the same and update the
internal version number.
True.
- Steve
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden