Re: Undefined symbols - cross development
Re: Undefined symbols - cross development
- Subject: Re: Undefined symbols - cross development
- From: Chris Espinosa <email@hidden>
- Date: Mon, 30 Jan 2006 23:46:28 -0800
On Jan 30, 2006, at 11:00 PM, j o a r wrote: Shouldn't that be "SDKROOT_ppc = /Developer/SDKs/MacOSX10.2.8.sdk"?
I'm not sure I understood this correctly but as I'm using a lot of functionality from 10.4 and do runtime checks don't I need to use 10.4 SDK? If I use 10.2.8 I get many compile errors.
Giving you errors is the purpose of the SDK. You should use the SDK that represents the baseline OS you're targeting - in your case the 10.2.8 SDK. If you haven't already, you should also read this:
No, that's not true.
You set the Mac OS X Deployment Target to the baseline OS you're targeting.
He is correctly trying to use 10.4u to exploit APIs available in the latest OS, and it's better to keep with one consistent set of headers and link libraries, and deal with platform issues at runtime via weak linking.
The big problem is that the jump from 10.2.8 to 10.4 may be too big for a reasonably ambitious C++ program to span; only Carbon and parts of Cocoa support SDK development, and other libraries (like OpenGL) need special treatment if you want to deliver a binary that runs from 10.2.8 to 10.4.4. and up.
So I'd recommend you either give up trying to deploy on 10.2.8-10.4.4 with the option to use Tiger features when available. Either give up Jaguar compatibility (by setting your Deployment Target to 10.3), or limit yourself to Jaguar features (by using the 10.2.8 SDK).
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