Hi, does anyone know if there are any ways to debug Silicon AUs in Logic without turning off SIP?
I thought this had been sorted at some point but can’t seem to find any info on it.
Cheers
Hi, does anyone know if there are any ways to debug Silicon AUs in Logic without turning off SIP?
I thought this had been sorted at some point but can’t seem to find any info on it.
Cheers
I do it like this. In the constructor of the audio processor:
#if JUCE_DEBUG
const juce::PluginHostType host;
if (host.isLogic() || host.isAbletonLive() || host.isBitwigStudio()) {
freopen("/tmp/stdout.txt", "a", stdout);
freopen("/tmp/stderr.txt", "a", stderr);
}
#endif
Then I use DBG() statements in various places to figure out what’s going on, while in a Terminal window I do tail -f /tmp/stderr.txt to track the output from DBG().
If the issue isn’t specific to Logic, I load the AU in REAPER and attach the debugger to REAPER.
Bitwig’s plug-in process (not the main process) also allows attaching a debugger but it won’t capture any debug output, which is why I still use the stdout and stderr redirects.
hi, thanks - I meant is there a way to physically attach a debugger to the AUPluginHosting_Arrow process without disabling SIP.
Not that I know of.
This really does suck balls. The Logic team should add some flags/options so they can still launch the AUs in-process or something for development otherwise they are gonna be getting second class support for their customers issues…
Honestly, attaching a debugger to the AUHostingService process on Silicon without disabling SIP is still a massive headache. Apple’s security hardened the hosting process specifically to prevent this. Most of us have just resigned to using a separate host like REAPER for the ‘heavy’ debugging and only switching to Logic with file logging once we’re hunting down Logic-specific quirks.
Yes, snap, I do most of my work under Live, just using Logic to sort out any funnies there.