Issue with Audio Unit on 10.11

Updating to 10.13 or later will fix this issue, but that isn’t an option for many of our customers.

Ideally, we could get someone from the Juce team who could explain what is going on here, and how Juce plugins on macOS would be utilizing MobileDevice.framework. This is affecting customers on Pro Tools as well as Logic, so it isn’t just an issue with AU plugins or auval.

1 Like

I was affected by this breaking my 32bit app so I remember my digging. While your plugin/app does not link against MobileDevice framework(which is updated silently[or was] whenever an iOS device was plugged into your mac), CoreAudioKit does.

otool -L /System/Library/Frameworks/CoreAudioKit.framework/Versions/A/CoreAudioKit 

I don’t think there’s too much the JUCE team can do… Well… CoreAudioKit is only used for AU views, so I suppose there could be some fiddling around so it’s not linked for AAX plugins, but AU will still be broken. There’s probably more frameworks that link against MobileDevice as well, I just stopped looking after that!

1 Like

I’m also getting reports for this issue since a few weeks, it is quite annoying.

We’ve been trying hard to work out a way around this, but have been unable to find any good solutions.

We cannot remove the dependency on CoreAudioKit without breaking AU, AUv3 and Bluetooth MIDI, and, whilst avoiding linking the framework for other plug-in formats is possible, it introduces too much complexity into the build system and doesn’t actually do anything the address the underlying problem.

The way we would suggest working around this is to export the project twice. First build everything apart from macOS ARM against the 10.12 SDK, then build just the ARM versions using a more recent SDK. Finally, use lipo to join the x86_64 and ARM versions.

2 Likes

Will the Intel versions of the plugins built against the 10.12 SDK work in Big Sur & Monterey? I had to rebuild everything back in 2020 in order for things to work in Big Sur - I was probably using an SDK older than 10.12, but I still have my concerns that stuff built against 10.12 will continue to work on Apple machines.

Also, is there a possibility that the ProJucer will enable builds that automagically join together both the 10.12 Intel version and the latest + greatest ARM? I’ve never heard of the lipo command before today, and Googling “lipo” just brings up a lot of body shame.

Also, where would one grab the 10.12 SDK nowadays? I’m away from my Mojave machine (that started as a 10.10 machine) for the next few days, so I can’t get the SDK from there.

Finally: any suggestions on who to contact at Apple to let them know about this issue? It doesn’t seem right that Apple releases some mysterious update after all these years, that breaks plugins on 10.11/12, when the framework being updated would seem to have ZERO relationship with the pro audio apps that are affected.

We’re receiving reports of this issue as well, I’ve also submitted a bug report on Feedback Assistant.

Do you have a bug # for the report that you could share? I sent an email to a few folks at Apple today, and they asked for a bug report. It seems like it might make more sense to have a big bug report that more plugin developers contribute to.

Weirdly enough, I found a similar bug report from 2019, when people on 10.11/12 updated their iPhones via iTunes. This was with a plugin that I had probably built in 2017 (the 1.0.4 build of Shimmer), and I would have been using a fairly old Apple SDK - no more recent than 10.10.

lol. Try man lipo in terminal…

In this case lipo -create … can combine the architectures.

1 Like

in order to grab 10.12 SDK, you need to grab an older version of xcode. (or contact me off list)
and copy it into xcode

and in
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Info.plist

Make sure that
MinimumSDKVersion
is set to 10.12

1 Like
3 Likes

If everyone could please share their bug report numbers that would be useful. When making contact with Apple it will be the first thing that they will ask for.

1 Like

@valhalladsp @t0m sure thing, our bug # is FB9968952. I also mentioned @otristan’s bug number in our ticket, and will add more if anyone has their own bug # to share.

1 Like

Just want to add that this is a related bug for Pro Tools, that seems to have the same root cause:

1 Like

We’ve spoken to Apple. There is room for some optimism.

We’ll keep this thread updated with any info we can share on a public forum.

10 Likes

I’ve been hit by this weird issue as well. Do any of you tell customers to revert to an earlier MobileDevice.framework? What is the easiest way to do that? Can this be downloaded from somewhere?

Here’s the same problem affecting cubase users btw:

1 Like

It would nice to have something on the hand

  • to check if this problem currently affects a user

  • some easy manual to fix the problem (which can also be executed by non-technical users)

Would be interesting what Apple says about it, and it would be cool if a fix would still be delivered in JUCE 6 ( or better fixed by apple )

for detection I believe we could tell users to enter this command in terminal:

ls -l /System/Library/PrivateFrameworks/MobileDevice.framework/Versions/A/MobileDevice

If the date is March 9th this year, then I believe it is the bad version but I cannot confirm this personally as all my intel Macs running older OSes had hardware failures during the last months :(.

Update: A customer of mine affected by the issue entered the ls command and indeed got Mar 9.

2 Likes

I solved the issue by removing the ‘-framework CoreAudioKit’ from the link command for my plugins (vst/vst3/au/aax), turns out I needed it only for the standalone version.

4 Likes

Thanks @jpo - that sounds like a promising “brute-force” solution if plugins don’t need to host other plugins - until Apple hopefully fixes the underlying issue. The affected machines probably still have loads of other issues if the MobileDevice.framework is indeed incompatible with the OS.

Hey,
I just ran into this, took me hours to arrive at __os_crash_fmt, found it by coding a test tool that tries loading my plugins, and that finally led me here.

Got one customer who ran into this on 10.12, and I now have a hacked together test machine with 10.12 where I can repro this.

So, 10.12 is affected too, framework date is March 9th lika @pflugshaupt wrote.

Customer doesn’t want to upgrade obviously, so I hope there will be some sort of fix.

1 Like