Re: compiling app for 10.6 and 10.7
Re: compiling app for 10.6 and 10.7
- Subject: Re: compiling app for 10.6 and 10.7
- From: Martin Hewitson <email@hidden>
- Date: Mon, 15 Aug 2011 20:34:25 +0200
OK, problem solved, sort of. Using NSClassFromString makes it work on both systems. I think I prefer this solution rather than hacking the headers.
Many thanks to all who helped!
Martin
On Aug 15, 2011, at 08:31 PM, Greg Parker wrote:
> On Aug 15, 2011, at 10:50 AM, David Duncan wrote:
>> On Aug 15, 2011, at 10:47 AM, Kyle Sluder wrote:
>>> On Mon, Aug 15, 2011 at 10:45 AM, David Duncan <email@hidden> wrote:
>>>> In either case, the best general way to determine availability of weak-linked implementations is to test for them directly rather than using a system version check (like gestalt). If your using Clang (which I suspect you are not given your error) you could just use:
>>>>
>>>> "if ([NSPopover class]) { /* do stuff with popovers */ } else { /* do stuff without */ }"
>>>
>>> Is it the case that this check will only work on 10.6.8 or newer, and
>>> that one should fall back on NSClassFromString() if supporting an
>>> older version of Snow Leopard?
>>
>> I'd actually forgotten that this required 10.6.8. If you can require 10.6.8, I would use the new style universally. If you cannot I would use the NSClassFromString style until you can.
>
> There's a bug here. The Objective-C runtime on 10.6.8 supports weak-linked classes, but the NS_CLASS_AVAILABLE macro does not know that.
>
> You can fix this if you are willing to hack your SDK headers. In Foundation/NSObjCRuntime.h, find the macro definition of NS_CLASS_AVAILABLE, and remove the check for __MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_7.
>
>
> --
> Greg Parker email@hidden Runtime Wrangler
>
>
> _______________________________________________
>
> 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
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Hewitson
Albert-Einstein-Institut
Max-Planck-Institut fuer
Gravitationsphysik und Universitaet Hannover
Callinstr. 38, 30167 Hannover, Germany
Tel: +49-511-762-17121, Fax: +49-511-762-5861
E-Mail: email@hidden
WWW: http://www.aei.mpg.de/~hewitson
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_______________________________________________
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