Re: Question about -compatibility_version (effective dynamic library versioning techniques)
Re: Question about -compatibility_version (effective dynamic library versioning techniques)
- Subject: Re: Question about -compatibility_version (effective dynamic library versioning techniques)
- From: Peter O'Gorman <email@hidden>
- Date: Tue, 29 May 2007 23:30:56 -0500
On May 29, 2007, at 11:09 PM, E. Wing wrote:
I'm trying to understand how to use dynamic library versioning
effectively. I'm currently looking at the -current_version and
-compatibility_version compiler flags. I noticed that building my
application against the library and then running the application seems
to ensure that the library pulled in at run time is not less than the
version I compiled with. E.g. if I originally built my application
against a library with compatibility version 2.0.0, and on launch, my
application only finds version 1.0.0 available, the program will
refuse to start.
I'm wondering, is there a way to express the other way around. E.g. if
I originally built a library with compatibility version 2.0.0, and
then I create a new version of the library that is ABI incompatible
with 2.0.0 (call this 3.0.0), is there a way to tell the OS not to run
the program?
You can change the library's install_name.
library: libMyCoolLib.dylib - install_name libMyCoolLib.dylib -
current_version 3.0 - compatibility_version 1.0
*hackhack hack - make ABI breaking changes *
library: libMyCoolLib.B.dylib - install_name libMyCoolLib.B.dylib -
current_version 4.0 -compatibility_version 4.0
Peter
--
Peter O'Gorman
http://pogma.com
_______________________________________________
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