JUCE 5.4.0 - all kinds of problems

I just “updated” to JUCE 5.4.0 and now a project that built perfectly yesterday has all kinds of errors. I checked all the module folders and everything is pointing to the right places.

Most of the errors I’m seeing (per Visual Studio 2017) are in the JUCE files.

What gives? I can’t build the exact same project that DID build yesterday!

Try updating your Projucer to the latest version (5.4.0) and re-exporting your project. Also note that the files needed for building VST2 plugins are no longer included with JUCE.

I did and that’s the problem! It’s causing all kinds of error I didn’t have YESTERDAY.

What build errors exactly are you seeing? There’s also a “breaking changes” file in the JUCE repo, that might give some clues about build errors.

Too many to list here. Here’s a screenshot of some of them - all in JUCE’s code:

But that’s not a screenshot of Visual Studio?

When I try to build it:

I didn’t have ANY of these issues yesterday before updating to JUCE 5.4.0

BTW - I have the VST2 SDK linked in in the Global Modules paths

I went back to JUCE 5.3.2 and the same juce project file opens and builds perfectly with NO errors in Juce or Visual Studio 2017.

I’m not smart enough to know what’s wrong but something is MAJOR amiss with Juce 5.4.0

When you update, make sure of these things:

  • update JUCE files
  • rebuild the Projucer in extras/Projucer
  • use the new Projucer to resave your project
  • make sure, the project points to the new modules, not to a old copy
  • call make clean for your project to make sure to get rid of outdated intermediate files
  • build

Hope that helps

This is the reason for the errors, and like @Xenakios also said it’s listed in the breaking changes.

And does that path still contain the VST2 SDK files? If it was pointing to a folder inside the JUCE repo, the files are no longer there. (Because JUCE 5.4.0 removed them. You will now need to re-obtain the files by some means yourself.)

Please see above where I said:

Do you have a ‘pluginterfaces’ folder in the VST2 SDK folder?

Yes, I saw that but just to be sure, I asked are the files actually there. The global path for VST2 SDK by the way is now called “VST (Legacy) SDK”. You might also want to check your Projucer project doesn’t have some separate path set for that.

Nope. The “VST2 SDK” folder I downloaded from Steinberg 2 weeks ago only has the core files.

Seems I caught this transition at a bad time - trying to learn Juce while writing my first VST3 plugin…

As far as I know Steinberg should no longer provide the VST2 SDK files. But can you find the following files somewhere?


You will unfortunately need them even if you are only trying to build a VST3 plugin, if the preprocessor define JUCE_VST3_CAN_REPLACE_VST2 is active for the JUCE VST3 code.

Sorry but you’re speaking a foreign language to me here. What I built in Juce 5.3.2 yesterday does not build in Juce 5.4.0 today, that’s all I know. If it takes all kinds of digging and fiddling to make 5.4.0 work then the solution - for me - is simple, USE 5.3.2!

Apologies for the inconvenience, this transition was announced two weeks before.
Please have a look into this thread (click on it, not just the first post), there are different solutions discussed:

Sorry for linking it again, but it contains all you need to know…

I just started using Juce a week or so ago.

I was aware VST2 was being phased out but I wasn’t aware it was going to happen in the middle of me trying to learn how to use Juce - yesterday to today!

So it seems the “path forward” - what Steinberg wants - is to stop making VST2 plugins. OK, but there are still A LOT of users out there with older DAWs that don’t support VST3…

Yes, this is a very miserable time to be a VST plugin or host developer. (It’s not just a JUCE problem, Steinberg’s recent insanity has affected lots of people in the VST field.)