# Mac OSX deployment target 10.8 and C++14

**URL:** <https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197>\
**Category:** MacOSX and iOS\
**Created:** [January 31, 2018, 11:42am UTC](https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197 "2018-01-31T11:42:09Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![jrrossi](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/jrrossi/32/140_2.png) [@jrrossi](https://forum.juce.com/u/jrrossi)\
**Post date:** [January 31, 2018, 11:42am UTC](https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197/1 "2018-01-31T11:42:09Z")

</div>

Hey jucers!!  
I’ve been working on a project that requires Mac OSX 10.8 compatibility, and the only way I could get it compiling was using C++11. The catch is it that I really would like to be able to use the DSP module as well.

Am I missing something here? Is there a way to get 10.8 compatibility with C++14?

Thanks!

---

<div class="post-metadata">

**Author:** ![railjonrogut](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/railjonrogut/32/505_2.png) [@railjonrogut](https://forum.juce.com/u/railjonrogut)\
**Post date:** [January 31, 2018, 11:50am UTC](https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197/2 "2018-01-31T11:50:39Z")

</div>

I have C++14 and Deployment Target set to 10.7 and it compiles fine. The Video module requires a new deployment target… so if you can, exclude that module from your project.

Rail

---

<div class="post-metadata">

**Author:** ![jrrossi](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/jrrossi/32/140_2.png) [@jrrossi](https://forum.juce.com/u/jrrossi)\
**Post date:** [January 31, 2018, 12:04pm UTC](https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197/3 "2018-01-31T12:04:51Z")

</div>

Nice, removed the video module!  
But now I get the `<atomic>` header missing (exactly at juce\_dsp.h) 😕 Using 10.8 with C++14  
Looking into apple docs to see if there’s something I can do about it!

Thanks for the prompt response! @Rail_Jon_Rogut

---

<div class="post-metadata">

**Author:** ![railjonrogut](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/railjonrogut/32/505_2.png) [@railjonrogut](https://forum.juce.com/u/railjonrogut)\
**Post date:** [January 31, 2018, 12:13pm UTC](https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197/4 "2018-01-31T12:13:05Z")

</div>

I don’t believe I had to change anything on MacOS for Atomic… Looking at my main header I have:

```auto
#if defined(_MSC_VER)
    #include <atomic>
#endif

```

Rail

---

<div class="post-metadata">

**Author:** ![jrrossi](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/jrrossi/32/140_2.png) [@jrrossi](https://forum.juce.com/u/jrrossi)\
**Post date:** [January 31, 2018, 12:25pm UTC](https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197/5 "2018-01-31T12:25:53Z")

</div>

hahahaha… I changed a bunch of stuff… nothing… then I set it to the `LLVM libc++` lib instead of `Use default`… and it worked! I thought LLVM lib was the default for mac.

Okay… I’m good here… and don’t know exactly what happened… But thanks for the help!!

---

<div class="post-metadata">

**Author:** ![daniel](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/daniel/32/790_2.png) [@daniel](https://forum.juce.com/u/daniel)\
**Post date:** [January 31, 2018, 12:35pm UTC](https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197/6 "2018-01-31T12:35:16Z")

</div>

I had a hunch about that might be the issue, I had earlier: the deployment setting changes the defaults for std lib and compiler variant, so I used to explicitly set it…  
I think 10.8 to 10.9 is the crucial spot…

> [@XCode and C++11 - Setting Language standard and libstd++ have no effect](https://forum.juce.com/t/xcode-and-c-11-setting-language-standard-and-libstd-have-no-effect/16101/14):
>
> Just for the records, there is a second catch which Timur solved here: http://www.juce.com/comment/318838#comment-318838 If you set a deployment target 10.8, the compiler default is no longer C++11 but C++98. And if one is unlucky like me and tries to set deploy to 10.8 and select Compiler C++11, the library's compiler default is then STD++ with C++98, which makes no sense at all... So be sure to set Compiler language always together with std setting. Compiler default is not what I would expec…

---

<div class="post-metadata">

**Author:** ![jrrossi](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/jrrossi/32/140_2.png) [@jrrossi](https://forum.juce.com/u/jrrossi)\
**Post date:** [January 31, 2018, 2:05pm UTC](https://forum.juce.com/t/mac-osx-deployment-target-10-8-and-c-14/26197/7 "2018-01-31T14:05:04Z")

</div>

Ohh… that makes much more sense now! I didn’t think that default settings would change for different deploy targets.  
Thanks a lot for the elucidation!!
