Errors Converting Code to VST3

I’m updating a program, a VST/AU host, that I last worked on February 2018 (and it worked fine then). I’m trying to update it to support VST3. I’m on a Mac. I updated my JUCE repo to be the dev version as of April 4 and built Projucer version 5.4.3. In the audio processors module of my project I unchecked VST and checked VST3. I changed the Global Paths VST3 Library reference to point to ~/JUCE/modules/juce_audio_processors/format_types/VST3_SDK.

When I build I get a bunch of errors saying it can’t find things like Steinberg::Vst::kSpeakerACN0, etc.

Can anyone tell me what I’m doing wrong?

Note that I expect to have to update my own code in some way for VST3 but I can’t get past the above errors.

I guess and say your VST3 SDK is too old. There’s a VST3 SDK already coming with JUCE, so you can simply remove the path and it should work

Oh just saw you are basically using the JUCE one… However you don’t need to set the path when you want to use the SDK coming with JUCE

I removed the path in Global Paths and I’m still getting the same errors. The VST3 library should be up to date as I downloaded a complete new version of the Juce repo this morning.

There’s also a path to the VST3 SDK in the individual exporters. Is that empty too?

With the latest version of the JUCE modules, and with the SDK being referenced from inside the same set of modules, you should not be seeing that error.

What are the “individual exporters”? I’m not recognizing where to look for that.

Thanks Tom, that seems to have fixed it. After a year of working on something else I had forgotten there were also references to the VST library in the exporters.

I cleared the VST SDK Folder field in the MacOSX exporter and it builts and runs with no apparent problems.

I’m actually suprised it works so well because in the Projucer project I enabled support for VST3 and disabled support for VST2. I expected to have to make changes to my code to support VST3 but maybe for my simple host application the same code works for VST2 or VST3.