Re: building and running on Snow Leopard
Re: building and running on Snow Leopard
- Subject: Re: building and running on Snow Leopard
- From: Ken Thomases <email@hidden>
- Date: Wed, 23 Sep 2009 02:37:01 -0500
On Sep 23, 2009, at 2:20 AM, Chris Idou wrote:
If you build an application on Snow Leopard, but against the 10.5
deployment target, and then you run the program on Snow Leopard, do
you get all the Leopard 10.5 bugs as if you ran it on Leopard, or do
you get to benefit from Snow Leopard bug fixes only if you build
against the 10.6 deplotment target?
Not quite either.
At runtime, your app can only use the frameworks provided on the host
system. Just because you linked against the 10.5 SDK doesn't change
the fact that Snow Leopard only provides Snow Leopard's frameworks.
In general, your app will get the benefit of bug fixes in the Snow
Leopard frameworks when running on Snow Leopard. However, there are
some bug fixes which Apple has determined would break backward
compatibility with apps built and tested on Leopard or earlier. For
those fixes, they test which SDK the app was built against. For those
built against the pre-Snow Leopard SDK, they continue to provide the
old, compatible-bug-buggy behavior. This is documented in the release
notes for the affected frameworks.
Note that this tests for the SDK that the app was built against. You
mentioned deployment target. That's not the same thing. If you build
against the 10.6 SDK but with a 10.5 deployment target, it is expected
that you will be testing on both 10.6 and 10.5. It is then your
code's responsibility to handle both the old framework behavior the
new behavior. The Snow Leopard frameworks _do not_ go out of their
way to maintain the old behavior in this case.
Regards,
Ken
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden