JUCE won't build for Deployment Target 10.8


#1

Just got the latest juce code and now if I set deployment target to 10.8 I get the following errors, if I set it to 10.9 it all works fine. Happens in the demo app as well.

 

In file included from ../../../../../subtrees/juce/modules/juce_audio_devices/../juce_events/juce_events.h:34:

../../../../../subtrees/juce/modules/juce_audio_devices/../juce_events/messages/juce_MessageManager.h:98:33: error: no type named 'function' in namespace 'std'

    static void callAsync (std::function<void(void)>);

                           ~~~~~^

../../../../../subtrees/juce/modules/juce_audio_devices/../juce_events/messages/juce_MessageManager.h:98:41: error: expected ')'

    static void callAsync (std::function<void(void)>);

                                        ^

../../../../../subtrees/juce/modules/juce_audio_devices/../juce_events/messages/juce_MessageManager.h:98:27: note: to match this '('

    static void callAsync (std::function<void(void)>);

                          ^

2 errors generated.

#2

FFS, I can't believe they didn't even have support for lambdas in 10.8.. Ok, I've sorted that out now.


#3

Thanks, you can also switch your standard library from 'compiler default' to 'LLVM C++ standard library with C++11 support'.


#4

Well, not really because that'll break the build for people who target older compatibility versions. I'd rather leave it as "compiler default" and wait for Xcode's default to become libc++


#5

I think the same problem is still present if you build for iOS version 6.0 or 6.1. It can be reproduced i.e. by building the Juce Demo for iOS 6.1.

Best regards

John