openframeworks/openFrameworks — pull request #2764 by admsyn (2014-01-18 17:00:47+00:00)
Title: Fix <tr1/memory> error on osx, ios

ALRIGHT, I think I figured it out :)

TL;DR openFrameworks as-is needs the c++ library version to be libstdc++. Setting the SDK to 10.8 kinda "fixes" that in a roundabout way. This lets fix lets us compile with the 10.9 SDK.

When using the 10.9 SDK, libc++ is made the "compiler default" standard library. This is what was causing the missing header error, as libc++ doesn't ship with the tr1 stuff. However, it *also* doesn't work with the C++98 dialect we're using right now (meaning, an #ifdef to select instead of doesn't fix the problem).

OpenFrameworks itself has been specifying libstdc++ for a while, but the project template has just been "compiler default", which just became a problem now since the OSX 10.9 SDK makes libc++ the "compiler default".

This PR sets the project template's library version to libstdc++, and also switches the debugger to LLDB to get rid of the nag popup ("Your project has been updated to use the LLDB debugger..").

All of the above seems to apply to iOS as well when setting the deployment target to 7.0+

Tested by running the project generator; I was able to create a new project without fiddling with build settings. Project templates have the post-fix `plutil -convert xml1` applied to get them back to regular XML.

Fixes #2686 #2741 #2695