Re: Tips to deploy applications to multiple Mac OS X versions
Re: Tips to deploy applications to multiple Mac OS X versions
- Subject: Re: Tips to deploy applications to multiple Mac OS X versions
- From: David Duncan <email@hidden>
- Date: Wed, 9 Apr 2008 12:27:32 -0700
On Apr 9, 2008, at 7:43 AM, Lorenzo Bevilacqua wrote:
I'm trying to build a Cocoa application so that it can run on Mac OS
X from version 10.3.9 to 10.5.
I have 10.5 installed so the application runs fine on my system and
on other Leopard systems.
I haven't build a project for multiple platforms yet, so I tried to
duplicate the main Xcode target and set different deployment target
settings like
Typically you would only use 1 target. Use the SDK to the OS whose API
your are targeting (such as the 10.5 SDK). Then set the deployment
target to the minimum version you wish to run on (example, 10.3).
Finally, you would do runtime checks for API availability.
Till now all Ok, but when I try to compile for example the Tiger
target I get some errors (mainly about fast enumeration). Thus I
have some questions:
- Does the Objective-C 2.0 fast enumeration make sense to be used? I
mean, if I don't use it, will my application perform worse on Leopard?
Fast enumeration relies on selectors that are only implemented on
10.5, so you can't use it on 10.4 or earlier systems. You cant use
most Obj-C 2.0 features if you wish to be compatible with 10.4 or below.
- Is there a way to differentiate part of code by platform? I
remember I saw in some files lines like this
#if MACOSX_DEPLOYMENT_TARGET == MAC_OS_X_VERSION_10_4
#endif
is this correct?
This is a compile time check. Generally it is appropriate if you plan
to ship a binary with a specific compile-time dependency. It sounds
like you really want a run time check, which requires you to check for
the availability of the features you are trying to use. How you check
for this will depend on what you are doing to some degree.
--
David Duncan
Apple DTS Animation and Printing
email@hidden
_______________________________________________
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