Re: Deprecated warnings on Intel 10.4.11, not on PPC 10.4.11
Re: Deprecated warnings on Intel 10.4.11, not on PPC 10.4.11
- Subject: Re: Deprecated warnings on Intel 10.4.11, not on PPC 10.4.11
- From: Chris Hanson <email@hidden>
- Date: Fri, 17 Aug 2012 07:39:43 -0700
On Aug 17, 2012, at 12:41 AM, Stephen Kay <email@hidden> wrote:
> Should I be compiling against the Current Os (10.4.11), or set everything to
> compile against the 10.4u SDK? I don't understand the difference when I'm on
> a 10.4 machine.
The difference is that the Current OS headers are whatever headers and libraries happen to be on your Mac at the time you do your build, while an SDK is a well-defined set of headers and libraries supplied by Apple.
Here’s what I think you'll want to do, probably in order:
- Update to Xcode 2.5 (the latest version for Mac OS X 10.4)
- Build your app for 32-bit Intel and PowerPC against the Mac OS X 10.4 (Universal) SDK
- Upgrade the compiler used for your app to GCC 4.0, fixing any issues this uncovers
- Qualify your application for PowerPC on whatever OS versions you want to support
- Qualify your application for Intel on whatever OS versions you want to support
At that point you should have something you can ship. You may not want to support OS versions earlier than Mac OS X 10.5 or 10.6 for Intel - your Intel customers may be on a later OS than 10.4 - so you may be able to reduce your qualification matrix there.
Don’t underestimate the qualification you’ll need to run well on Intel, either, if you have code that deals with raw data (file formats and such); lots of older code makes the assumption that “Mac” means “big-endian” and may thus need byte-swapping added.
After that, you should probably consider doing the following:
- Migrate development to Mac OS X 10.5 or 10.6 on Intel with Xcode 3:
- Xcode 3.1.x on 10.5
- Xcode 3.2.x on 10.6
- Upgrade your project through multiple compiler versions, in order:
- GCC 4.2
- LLVM-GCC 4.2
- LLVM Compiler (clang)
- Upgrade your project to the latest SDK available with the tools (10.5 or 10.6)
That will help you take advantage of compiler optimization improvements, catch any bugs in your code that are exposed by differences in compiler strictness (review every warning), and deal with deprecations and changes to OS functionality implicit with newer versions.
This will also give you a solid basis on which to begin updating your application for the future. For example, once you have your project building well using the clang on Xcode 3.2 on OS X 10.6, against the OS X 10.6 SDK, you should also be able to build it using Xcode 4.4.1 on OS X 10.7 or 10.8 (for example). Taking it straight from Xcode 2.5 on OS X 10.4 to Xcode 4.4.1 on OS X 10.8 will be much more difficult without any intermediate steps.
-- Chris
_______________________________________________
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