Re: Compiling in Xcode 4 For OS X 10.4 and 10.5
Re: Compiling in Xcode 4 For OS X 10.4 and 10.5
- Subject: Re: Compiling in Xcode 4 For OS X 10.4 and 10.5
- From: Quincey Morris <email@hidden>
- Date: Tue, 17 May 2011 21:25:39 -0700
On May 17, 2011, at 18:31, Howard Rodstein wrote:
> I am confused as to whether you can compile a plug-in using Xcode 4 that will reliably run on OS X 10.4 and 10.5, even assuming that you use no API routines added after 10.4.
>
> The "About Xcode and IOS SDK.pdf" file that appears on the Xcode 4 installer DVD says:
> "To build your app to work on older OSs, for instance M OS X 10.5 Leopard,
> set the project setting Base SDK to "Latest", and set Mac OS X Deployment
> Target to "Mac OS X 10.5".
>
> However, on May 13, 2010, Chris Espinosa wrote on the Xcode mailing list:
> "Running on 10.4 requires gcc 3.3 or 4.0. gcc 4.2 does not generate code
> that runs on 10.4."
> and Xcode 4 does not include GCC 4.0.
>
> On March 12, 2011, Joar Wingfors wrote:
> "It is true that Xcode 4 doesn't support developing for Mac OS X 10.5 and earlier.
> If you need to target 10.5 (and I understand that many of you do) you should
> continue to use Xcode 3.2 for that purpose."
>
> These statements seems to contradict the statement in "About Xcode and IOS SDK.pdf".
Here's how I understand the situation:
-- Xcode 4 only builds against the 10.6 (or, theoretically, later) SDK. That's the Base SDK setting.
-- Xcode 4 can build for a deployment target of 10.5 or later. I don't remember exactly, but I believe Joar's comment was in the context of a discussion about using 10.5 as the base SDK, and he was just saying you can't do that in Xcode 4.
-- I don't *know* anything useful about gcc 4.2 code generation vs. 10.4 deployment targets, but my *guess* is that it compiles for the Obj-C 2.0 runtime only, which AFAIK isn't present on 10.4, so avoiding post-10.4 API won't help, and even avoiding 2.0 runtime features at the source code level may not help. (It's possible that this entire statement is false, since I'm speaking out of a combination of memory and guesswork.) I wouldn't assume that a test with a simple plugin is going to give you reliable results. You may have simply failed so far to find the incompatibilities, and it sounds like you wouldn't want your users to have to find them for you.
> Finally, the questions.
>
> If I set my sample projects up like that and use no post-10.4 API's, will my plug-ins reliably run on 10.4, 10.5 and 10.6?
>
> If not, what combination of settings that will support the widest range of operating system versions without a lot of burden on my occasional-programmer-users.
I think the short answer is that if your user community must be able to deploy on 10.4-10.6 you must stay with Xcode 3.2.6 for the present. If you (or they) want to play in an Xcode 4+ world, you're going to have unfreeze time and let 10.4 die of old age.
There's no pejorative intended here. Someone (presumably someone you work for) has decreed ongoing 10.4 compatibility for business reasons. Well and good, but the price for that is no Xcode 4.
_______________________________________________
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