Enable Host Formats (juce_audio_processors) breaks VST3 build

After wastin a couple of hours debugging why our plugin host doesn’t compile when enabling VST3 im 100% sure I found the cause.

I created a brand new Audio Plugin project, everything freshly downloaded and built including ProJucer, VST3 SDK latest version just downloaded from Steinberg site

Steps to reproduce:

  • Create a new audio plug-in project
  • Enable VST3 format on Config
  • Set the SDKs paths
  • On juce_audio_processors module enable the JUCE_PLUGINHOST_VST flag, do the same for VST3 and AU
  • Build
  • You will get the following undefined symbols for x64 architecture thing:


Hope this helps to get a fix soon, this will break our release schedule for this week.

The Cause®

Guess what, same thing happens when enabling AAX:


Those Steinberg symbols should all be included inside juce_VST3Headers.h… You’re not setting the JUCE_VST3HEADERS_INCLUDE_HEADERS_ONLY flag, are you?

like i said Jules, nothing weird, fresh new project, actually created 3 different TestProjects, went nuts about it, it happens every time if you do those steps

Nothing else was necessary to build our Plug-In host before Juce 4.2 update, so im sure it happen after the polymorphic change

Ok, I’ll get Fabian to take a look at this…

1 Like

any update on this?

thanks in advance

Not yet sorry. I’m working through my bug back log list at the moment. I’ll have a look soon.

1 Like

Hmmm I can’t seem to re-produce this. I’ve used the Projucer Wizard to create a new plug-in project on Mac OS X. I’ve enabled JUCE_PLUGINHOST_VST, JUCE_PLUGINHOST_VST3 and JUCE_PLUGINHOST_AU flag (like in your screenshot). Building works fine for me. Also your log seems to be indicating that you are building a VST 2 plug-in? Can anyone else reproduce this?

did you enable VST3 ??


Yes I did. What xcode version are you on?

I was on 7.1 something, i updated to 7.3.1 yesterday, on neither worked

it happens when both VST2 & VST3 are enabled

And this happens when enabling AAX: (only AAX)


Juce Status

I got this when changing everything from debug to release_x64 (a configuration i made with the projucer where the Architecture is set to x64), i changed the All Targets, AAX Target and Shared Code target to it.


I just tried everything on a new Macbook Pro. Got same results


This happens when enabling both VST2 & VST3

Any updates on this?

Its been a week now

Can you please try the latest tip on the development branch and check if this fixes your issue?