I’m getting a whole bunch of linker errors for the PT_90_PlugInSDK on Windows when trying to build an audio plugin in Juce. On OSX 10.7.4 i got it running.
Has anyone got it to work on Windows (and how) or are most of us just sticking with PT_80_SDK?
We’ve been happily building Juce plugins using PT_90_PlugInSDK on Windows for some time. I set up the VS projects myself (not using the Introjucer) by following the instructions in juce/extras/audio plugins/How to use this framework.txt and adapting them where necessary. This was a while ago now, so I’m not sure if the following list is comprehensive, but according to the notes I made at the time the only modifications needed were:
change all the header search paths from “PT_80_SDK” to “PT_90_PlugInSDK”[/]
remove the following paths, which no longer exist: AlturaPorts\TDMPlugins\PluginLibrary\Interfaces and AvidCode\AVX2sdk\AVX\avx2\avx2sdk\inc[/]
add a new header search path: AlturaPorts\TDMPlugins\common\Macros[/]
add a preprocessor macro ePlugIn_StemFormat_7dot1=ePlugIn_StemFormat_7dot1DTS[/]
and that’s it. No link errors as far as I remember. Also, remember to compile the static libraries first (DAE.lib, DigiExt.lib, DSI.lib, PlugInLib.lib). I have a feeling there was something about PlugInLib being called PlugInLib_stdcall or something, but I just renamed it.
In PlugInLibs.sln the default configuration was Debug_stdcall. Changing this to Release and then recompiling the lib removed all the previous errors.
But now i still can’t get rid of a linker error: cannot open file ‘…\juce\modules\juce_audio_plugin_client\RTAS\juce_RTAS_WinExports.def’
Also couldn’t find the winbuilds for DAE.lib, DigiExt.lib and DSI.lib …
Well in my case I never actually opened PlugInLibs.sln. I just built one of the sample plugins as Jules suggests in “How to use this framework”. Then all the libs were there in PT_90_PlugInSDK\WinBag\Release\lib
Your linker error suggests that the path to the exports file is incorrect. Look in project properties > Linker > Input > Module Definitions File and make sure you have the right complement of …\ to get from the project dir to the juce dir. You might want to use $(ProjectDir)…\ to be explicit.