Mailing Lists: Apple Mailing Lists
Image of Mac OS face in stamp
Question about -compatibility_version (effective dynamic library versioning techniques)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Question about -compatibility_version (effective dynamic library versioning techniques)



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?


Also, I read somewhere in the documentation that major numbers represent ABI breaking changes, and the two other minor numbers also represent ABI changes and no ABI changes (respectively). Is this actually enforced by anything in the OS or is it only a recommended convention?

Thanks,
Eric
_______________________________________________
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




Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2011 Apple Inc. All rights reserved.