Modules Audio Unit Bus error with Mac OS X 10.4

I’ve recently upgraded to the JUCE modules branch (which overall has been a thoroughly worthwhile venture: my build times have been cut down to a third of what they were previously!), but during the big “ensure no regressions have sneaked in” testing phase, I’ve hit a snag with Mac OS X 10.4 and ppc support.

It would appear (allowing for user error here) that Juce Audio Units no longer work on 10.4 / ppc machines. And it seems easy to replicate - I’ve got a fresh pull of the latest juce git source, and am building the Juce Audio Plugin demo. The only changes I’ve made to the project are: setting the build architecture to ppc, and setting the deployment target to 10.4.

Unfortunately, this instantly crashes any audio unit host on 10.4 ppc, including auval, which fails a “bus error”. The component does however seem to work fine on a 10.6 Mac OS X machine running either Ableton Live ppc, or auval ppc, suggesting this is more to do with 10.4 than ppc.

I was just wondering if anyone else had experienced this and already come up with a solution, or has any suggestions for what I could try. If not, I guess I’ll dig a little deeper, but I was hoping someone could save me the pain of debugging on a decrepit 10.4 machine!

EDIT - Hang on: could have already been reported and workaround suggested here http://rawmaterialsoftware.com/viewtopic.php?f=8&t=8724&p=49734

Yes, sorry, this was already reported and the suggested fix works; thanks PieterS!

Simply, you need to ensure that use the 10.5 SDK when building ppc Audio Units by adding a User-Defined setting of SDKROOT_ppc to macosx10.5 . Perhaps there would be some mileage in having the Jucer automatically adding this to generated Xcode projects?

+1. Also, it won’t do any harm for those who don’t have 10.5 SDK (XCode 4 doesn’t come with it etc) as they won’t build for ppc anyhow…

Good suggestion, thanks chaps! I think I’ll also remove the 10.4 SDK from the introjucer’s list of SDK options, to force everyone to use at least 10.5.