Ableton does not recognize VST after updating to JUCE 7.0.8

I have been using JUCE to develop a Audio plugin.
It has worked very well in Ableton ever since I started developmen. Updating to JUCE 7.0.8 from 7.0.7 renders the plugin invisible to Ableton.
There is an error on the console when navigating to the VST3 folder in the sidebar, which could be a red herring.
error: Failed to load plugin: a sealed resource is missing or invalid

It’s still discoverable from MaxMSP (VST3) within ableton and Logic Pro (AU)

Downgrading fixes the issue

ENV
MBP 2023
Apple M2 Pro
Sonoma 14.0
Ableton Live 11.3.13
Clang++17 llvm

Please try the following steps and let us know if the problem is resolved:

  • Remove the plugin from ~/Library/Audio/Plug-Ins/VST3
  • Open Live, then close it
  • Update to 7.0.8, rebuild the plugin
  • Verify that the plugin is located at ~/Library/Audio/Plug-Ins/VST3
  • Open Live, and attempt to load the plugin

No luck at all. I will try to pinpoint which commit is the one causing this, but ATM time is scarce

Actually I though the value/effort ratio was low since there aren’t that many commits between 7.0.7 and 7.0.8

The actual commit that breaks Ableton is
3a33c70a6: CMake: Ensure bundle is adhoc-signed before attempting to run vst3 or lv2 helpers

Could you try passing the --force and --deep flags to your code signing step.

I will thanks

How are you installing the plugin? Are you using the CMake plugin-copy step, or are you using a different technique to install the plugin?

If you’re not using the plugin copy step, are you signing the plugin before installing it?

I am using the CMAKE plugin copy step and NO I am not signing it before that.

I’ve also put together an installer pkg that pretty much takes the files from the installation and copies then to the equivalet directory in ~/Library/Audio/Plugins/

I said I would try those deep and force flags but when I get at the point where I start signing them.

So far, I haven’t been able to reproduce the issue.

Does it work if you change extras/Build/CMake/checkBundleSigning.cmake to add a -f to the codesign invocation?

execute_process(COMMAND "${JUCE_XCRUN}" codesign -f -s - "${src}")

I guess my issue is the complete lack of signing.
Try not signing the binaries and try the commit 3a33c70a6: CMake: Ensure bundle is adhoc-signed before attempting to run vst3 or lv2 helpers and the one before.

I will try to sign the binaries soon, any pointers resources would be really helpful.

If you’re using the CMake plugin copy step, then the plugin will be automatically adhoc-signed before it is copied. This automatic signing uses the checkBundleSigning.cmake script.

Did you try adding the -f flag like I suggested above? Did it have any effect?

I tried adding the -f.
It does fix the issue. Thank you very much.

Is this something that can be expected to be in the next version?

If it fixes the issue for you, then I expect we will add that change on the develop branch shortly.

1 Like

Hi @reuk , should I open up a github issue or PR, maybe?

It should already be fixed on develop:

2 Likes

Thank you so much