Xcode 10 feedback

I use AppCode, and the sanitizers can be enabled by putting -fsanitize=address,undefined in the compiler/linker flag fields of the Xcode exporter in the Projucer.

1 Like

Ah yes, that probably just gets passed to xcodebuild.

Does the debugger work with it though? I.e. in Xcode you can see the allocation and deallocation stacks and jump to code lines which is super helpful (if you don’t like reading the fairly verbose lldb output).

To be fair, using Xcode 10.1 with the legacy build system seems to work perfectly well (unless you need to build 32-bit apps).

1 Like

It works alright… There’s no dedicated sanitizer UI, but AppCode seems to be smart enough to turn file references in the logged output into clickable links, so you can still inspect the allocation/deallocation stacks fairly easily. The debugger pauses on issues too, which is handy.

1 Like

Hi fox,

I’m having this error when trying to build AudioPluginHost in Xcode10!

That problem is unrelated to Xcode 10. See these topics:

1 Like

Hi,

Ok i’m for a new project. Meanwhile where do i find the JUCE_VST3_CAN_REPLACE_VST2 statement to set to 0 ?

Hello All.
I’m kinda a dinosaur and still using the MAC OS X 10.9.5 with XCode 6.
But it’s time for an upgrade and I can’t understand - should I go for xcode 9 or 10?
Only compiling 64 bit aax\vst\au plugins, nothing more.
So, is it recommended to work on XCode 9 ?

Thanks!

I’m having frequently SKAgent high CPU usage problems while on Xcode10 and some people (me included) are having problems with OpenGL in Mojave+Xcode10 with high CPU usage aswell. Aside from this, I’m working with it everyday without more hassle. Oh, autocomplete & suggestions never worked well for me but that was an Xcode9 problem already.

1 Like

Thanks! The OpenGL problems - is that about compiling with 10.14 sdk that leads to a non working openGL? I’ve read about that in that particular topic.

OpenGL can be overcome if you compile against 10.13 SDK iiuc.
If you don’t care about 32bit then Xcode 10 is… ok.
Another major change that aren’t supported yet by JUCE (again if I remember correctly), is the new build system that is now set by default. with legacy build system Xcode 10 works ok.
I haven’t tested Xcode 11 though.

1 Like

If I wanted to support 32-bit builds, is it enough to have an older version of Xcode to compile with?

I use both all the time. I have Xcode 10 and Xcode_9.app. only trick is to download the previous Xcode version after the latest. then, with xcode-select you can switch the entire build and use xcodebuild for 9.

1 Like

Great, thanks. Where is good to grab Xcode 9? I think I have it on a Time Machine backup too…

1 Like

Log into developer.apple.com (oh, the forum tells me, I said that before in this thread :wink: )

2 Likes

This problem still exists in Xcode 11 GM, which I’ve just installed and checked :man_facepalming:

Btw, at least from my experience with Xcode 11 GM. juce and cpp works as expected.

I assume you are using the “Legacy Build System”, either knowingly or because Projucer sets if for you. That is the known workaround to avoid this problem in Xcode 10 and it also works for Xcode 11.

Nonetheless, if you use the “New Build System”, which is marked as being the Default, the problem remains identical to how it was in Xcode 10, and that’s sad because:

a) the legacy system may be dropped at some point in the future, and
b) the new system has indeed some nice features which would be nice to have, like a sane way to concatenate values in .xcconfig setting files.

1 Like

Indeed, but what I meant was that current Projucer exports work similar to Xcode 10. there’s (at least so far on my end) no regression unlike Xcode 8->9->10

1 Like

It seems the “pinch” has arrived, there would be no way to possibly support both Catalina and 32-bit builds with a single build process: https://developer.apple.com/news/?id=09032019a
“Xcode 10 or later is still required to submit”.

You’d think no one needs 32-bit builds anymore but the issue is less with the OS and more with the host - my example is Wavelab 7 which is a quite capable host I’ve never gotten to work with 64-bit plug-ins. Lots of people still on (32-bit) Logic 9 as well, and I know at least one Pro Tools engineer still on (32-bit) RTAS.

Curious what people trying to cast a wide net on macOS have planned. I am leaning towards a build process that invokes XCode 9 and XCode 10 or 11 separately, just trying to figure out how to split the configuration of build products across each invocation of xcodebuild as cleanly as possible.

1 Like