Mac-Windows Compatibility

Basic question:

Do you all know if you can put a Macintosh-compiled VST3 on a Windows computer and have it run? Or do I need to own a Windows computer and compile on Virtual Studio?

Thanks!

You need to compile with Visual Studio (or other Windows compiler).

You can get away from having another computer by running Windows in a Virtual Machine, or use cloud based service like GitHub Actions to run your builds.

Great! Thank you!

Would Bootcamping work as well?

Sure, Bootcamp is basically native Windows on your Mac (if you have an Intel Mac). It will force you to restart your computer and select the Windows partition each time though, virtualization may be more comfortable if it’s just for testing purposes.

Sounds good! Thank you.

OK, so I have done a Bootcamp and it works great. I have my VST3 SDK installed. My project says it wont open up in Visual Studio as an option. What do I do about this?

Did you install Visual Studio 2019?

I did!

What project are you trying to open? The correct one for windows would be the Visual Studio Project/Solution with file ending *.sln. You can export one of those with the Projucer.

I figured it out! Kind of a weird work around, I had to copy and paste my source code into a new project because I couldn’t make VS as a selectable option to export that .sin.

I now have a new set of problems, that I’m betting has to do with VS.

I have my code working just fine in my Mac OS build, and now I am getting errors like these in the VS on Windows build:

 error C2061: syntax error: identifier 'AudioProcessorParameter' (compiling source file ..\..\Source\PluginProcessor.cpp)

 'MPEQAudioProcessor::prepareToPlay': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\Source\PluginProcessor.cpp)

I had nothing like this in XCode, so now I’m not sure what’s going wrong. I installed all of what I believe are the right C++ tools in VS, but maybe I am missing something there too.

Thanks for your help!

Since you said you made a new project, you might be facing the following issue: the project setting Add "using namespace juce" to JuceHeader.h is Enabled on your macOS project, but Disabled on your Windows project.

image

1 Like

Thank you! That worked!