On 27 Aug 2009, at 13:04, Marco van de Voort wrote:

OS X and FreeBSD have basically the same problem, however has some
mitigating factors (they change mostly only with major versions, and have
the ability to run older binaries using resp COMPAT and SDK system)

The SDK's on Mac OS X are only for compiling, not for running. The way it's solved on Mac OS X is by almost never breaking backwards compatibility at the library level (they've haven't done it yet for libc since the launch of OS X 8 years ago, although that's obviously not that long a time ago), and if they do they include both the old and the new library or framework.

Both libraries and frameworks have internal versioning information that enables automatically checking whether or not an application and a library are compatible. Standard library linking happens similar to on other Unix systems, with the filename being used to select the appropriate version. In case of frameworks, the framework bundle itself can contain multiple versions and the correct one is automatically selected when the application is launched.


Jonas
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to