# Xcode 10 vs JUCE

**URL:** <https://forum.juce.com/t/xcode-10-vs-juce/30786>\
**Category:** MacOSX and iOS\
**Created:** [December 9, 2018, 11:02am UTC](https://forum.juce.com/t/xcode-10-vs-juce/30786 "2018-12-09T11:02:51Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![yairadix](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/yairadix/32/1114_2.png) [@yairadix](https://forum.juce.com/u/yairadix)\
**Post date:** [December 9, 2018, 11:02am UTC](https://forum.juce.com/t/xcode-10-vs-juce/30786/1 "2018-12-09T11:02:51Z")

</div>

Xcode 10, by default, doesn’t properly rebuild the JUCE sources. This is probably due to it being confused by `.cpp` files being `#include`d. This causes bugs and headaches (“aaahh why didn’t it show my debug print!?!”).

Things however still work fine if enabling the “Legacy Build System”.

I suggest that the Projucer should save the project with this setting, and [this commit](https://github.com/soundradix/JUCE/commit/21af8ccd886607215545c5092ea89a56b1616ed6) (from [SR’s juce5 branch](https://github.com/soundradix/JUCE/tree/juce5)) makes it do that. If and when the problem is fixed in the future via Apple changing their build system or JUCE adapting itself to it (I suspect the legacy system will be dropped at some point), this change should be removed.

Cheers, Yair

---

<div class="post-metadata">

**Author:** ![Verbonaut](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/verbonaut/32/11824_2.png) [@Verbonaut](https://forum.juce.com/u/Verbonaut)\
**Post date:** [December 9, 2018, 11:24am UTC](https://forum.juce.com/t/xcode-10-vs-juce/30786/2 "2018-12-09T11:24:19Z")

</div>

I remain very conflicted over XCode 10. I like to stay current with my build chain, but am just not ready to tell my customers I’m not supporting them if they want to use 32-bit systems that they have confidence in simply because of an arbitrary decision by Apple. Further having to depend on a legacy build system that Apple will most likely yank from me at some unpredictable point in time gives me the heebie-jeebies.

---

<div class="post-metadata">

**Author:** ![ttg](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/ttg/32/14456_2.png) [@ttg](https://forum.juce.com/u/ttg)\
**Post date:** [December 9, 2018, 11:51am UTC](https://forum.juce.com/t/xcode-10-vs-juce/30786/3 "2018-12-09T11:51:12Z")

</div>

> [@hill\_matthew](#):
>
> I like to stay current with my build chain

For building macOS plug-ins, Xcode 9 is still the way to go.  
This commit isn’t breaking Xcode 9 export (tested), as SR still uses Xcode 9 for building.

> [@hill\_matthew](#):
>
> having to depend on a legacy build system that Apple will most likely yank from me at some unpredictable point in time gives me the heebie-jeebies.

That’s right.  
But if you consider any consequences all are better than current situation -

- Apple fix bugs in the new Build System - this commit can be reverted.
- Apple ditches/break Legacy Build System - JUCE build will fail, this will be reverted and will get back to current state or improved by changing JUCE code to overcome Xcode issues.

---

<div class="post-metadata">

**Author:** ![matkatmusic](https://avatars.discourse-cdn.com/v4/letter/m/dfb087/32.png) [@matkatmusic](https://forum.juce.com/u/matkatmusic)\
**Post date:** [December 9, 2018, 7:36pm UTC](https://forum.juce.com/t/xcode-10-vs-juce/30786/4 "2018-12-09T19:36:20Z")

</div>

i don’t have this problem with ios and mac os applications built using juce and xcode 10, fwiw.

---

<div class="post-metadata">

**Author:** ![yairadix](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/yairadix/32/1114_2.png) [@yairadix](https://forum.juce.com/u/yairadix)\
**Post date:** [December 9, 2018, 8:07pm UTC](https://forum.juce.com/t/xcode-10-vs-juce/30786/5 "2018-12-09T20:07:00Z")

</div>

Do you update JUCE a lot? When you edit some `juce_something.cpp`, for example to add a simple `syntax error!` line, does Xcode properly recompile it and report the error?

---

<div class="post-metadata">

**Author:** ![ed95](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/ed95/32/7635_2.png) [@ed95](https://forum.juce.com/u/ed95)\
**Post date:** [December 10, 2018, 10:10am UTC](https://forum.juce.com/t/xcode-10-vs-juce/30786/6 "2018-12-10T10:10:55Z")

</div>

> <https://github.com/WeAreROLI/JUCE/commit/203b50a1898928f7eb2b29b447eb3a4c9b843992>
