VST3 crash while AU not: 0x1319fd420 <+0>: pushq %rbp

Hi,

My plugin cannot be loaded and I don’t understand why… AU works fine, while vst cannot be loaded:

If I compile vst3 with Cubase 13 (edit scheme->Executable: cubase 13 app) it works fine, but if I open Cubase by myself and try to open my plugin It crashes.

To understand I open AudioPluginHost and compiled it from xcode to get some infos in terminal:
If I load in AudioPluginHost my plugin as AU it works fine, while if I load it as vst3 an assertion is risen as in the screenshot in attachment

and if I go further it’s risen the crash that’s shown in the screenshot in attachment:

What’s going on? I cannot understand it …

Well, from what I see in the screenshot it says that it’s crashing in __asan::AsanDie. The log output below furthermore says

ERROR: Interceptors are not working. This may be because AddressSanitizer is loaded too late (e.g. via dlopen)

I think these are some very clear messages. As you probably know, a VST on macOS is a dynamic library (dylib) that it loaded by the host at runtime via dlopen. This is how plug-ins work under the hood in general. Now the error says that this exact setup causes problems with AddressSanitizer and then the call stack tells you that your plugin crashes in a function named asan::AsanDie – so probably AddressSanitizer makes your plugin crash because the setup is wrong and explains the reasons in the log output.

Now the main question should be: Do you actually want to use AddressSanitizer here at all? If so, your question should be how to set up a debugging session with AddressSanitizer correctly. If you don’t want to use it, you should try to re-build your plugin without AddressSanitizer.

Last but not least a little side note

This is technically wrong, you always compile the plugin with your compiler, which is Clang on macOS by default. You just specified cubase as your startup executable that is launched and possibly debugged after the plugin is compiled :wink:

1 Like

really thank you for you’re reply!

I removed Address Sanitizer, but I cannot open the plug anyway, now the difference is that no errors are shown me in terminal but only on AudioPluginHost, here the screenshots:

If you suspect something is busted with the addresses (hence the ASAN), compile the vst with asan and also execute audiopluginhost with asan enabled.