After a bit of time away working on other things, I’m trying to build my plugin again, and run it in the debugger with JUCE AudioPluginHost. JUCE 7.0.12. Xcode on Mac.
This was working a month or two ago. Now I’m getting an error: command bin/sh failed with exit code 139.
“VST3.build/Script-EC18D487B47F85E3EFF806A4.sh: line 8: 3596 Segmentation fault: 11”
If I comment out the manifest step in the “Build Phases” settings (shown below), the plugin compiles successfully and runs in the APH; instantiating it and opening the editor does not crash or anything. It seems to run normally.
I’m not in front of my computer right now but this is what comes to mind.
Build and debug the juce_vst3_helper executable
Do a git bisect to find out which commit is causing the issue
In the event that debugging the helper seems to work it will likely be related to code signing. Code signing would normally happen after the post build script but to run the plugin we need it to be signed so we try to replicate the code signing step in the post build script. You may need to turn off code signing but keep the code signing line in the post build script to replicate the issue
I don’t think this is a JUCE issue, but I don’t know how to fix it.
Forgive me if I misunderstand, but:
I’m not code-signing anything (explicitly) as far as I know; I’ve never gotten to that point so far where it was necessary to configure code-signing.
How do I disable this “code-signing”, then?
If I switch my Scheme to compile/run just the VST3 Manifest Helper, and do a debug Build, it runs and then exits:
2024-08-20 07:26:42.746740-0700 juce_vst3_helper[8344:604520] [DYMTLInitPlatform] platform initialization successful
moduleinfotool 1.0.0 [Built Aug 20 2024]:
-create | Create moduleinfo
-validate | Validate moduleinfo
-version | Module version
-path | Path to module
-infopath | Path to moduleinfo.json
-compat | Path to compatibility.json
-output | Write json to file instead of stdout
-help | Print help
Usage:
moduleinfotool -create -version VERSION -path MODULE_PATH [-compat PATH -output PATH]
moduleinfotool -validate -path MODULE_PATH [-infopath PATH]
Program ended with exit code: 1
The problem does not seem to be related to the JUCE version; if I build an older version of my program with the same JUCE 7.0.12, this problem doesn’t happen. Therefore, it’s some change I made in my STANDALONE program the last few months of work, and now that I am trying to compile the plugin version, there’s an issue; However, when I get rid of the juce_vst3_helper step in the Build Phases, the plugin runs and launches normally, so I cannot debug any issues happening; there aren’t any.
Is there a way to run the VST3 manifest Helper and attach to it so I can see what is causing it to exit?
I am trying to narrow down which of my commits the problem surfaces in; but it would be helpful to somehow be able to debug into where the problem is.
I managed to backtrack and find the error in my code that was causing this problem (a crash on a nullptr when the plugin is closed), so that’s good. I was working on my standalone app the last few months (which is configured as a JUCE GUI App, not a plugin in standalone mode) so I haven’t been testing the plugin builds.)
However, I still would like to know if there is someway to debug the juce_vst3_helper and attach to it so you can find what is causing it to exit?